summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xfa/fde/xml/cfx_saxreader.cpp6
-rw-r--r--xfa/fde/xml/cfx_saxreader.h10
2 files changed, 7 insertions, 9 deletions
diff --git a/xfa/fde/xml/cfx_saxreader.cpp b/xfa/fde/xml/cfx_saxreader.cpp
index 552ec5f5fe..dfef595f8d 100644
--- a/xfa/fde/xml/cfx_saxreader.cpp
+++ b/xfa/fde/xml/cfx_saxreader.cpp
@@ -156,8 +156,7 @@ void CFX_SAXReader::Reset() {
m_iEntityStart = -1;
m_iNameLength = 0;
m_iDataPos = 0;
- delete m_pCommentContext;
- m_pCommentContext = nullptr;
+ m_pCommentContext.reset();
}
void CFX_SAXReader::Push() {
@@ -395,7 +394,7 @@ void CFX_SAXReader::ParseDeclOrComment() {
m_eMode = CFX_SaxMode::Comment;
GetCurrentItem()->m_eNode = CFX_SAXItem::Type::Comment;
if (!m_pCommentContext)
- m_pCommentContext = new CFX_SAXCommentContext;
+ m_pCommentContext = pdfium::MakeUnique<CFX_SAXCommentContext>();
m_pCommentContext->m_iHeaderCount = 1;
m_pCommentContext->m_iTailCount = 0;
return;
@@ -412,6 +411,7 @@ void CFX_SAXReader::ParseComment() {
m_dwNodePos = m_File.m_dwCur + m_File.m_dwBufIndex;
m_eMode = CFX_SaxMode::CommentContent;
}
+
void CFX_SAXReader::ParseCommentContent() {
if (m_CurByte == '-') {
m_pCommentContext->m_iTailCount++;
diff --git a/xfa/fde/xml/cfx_saxreader.h b/xfa/fde/xml/cfx_saxreader.h
index 4e36615429..a5973c699e 100644
--- a/xfa/fde/xml/cfx_saxreader.h
+++ b/xfa/fde/xml/cfx_saxreader.h
@@ -12,7 +12,10 @@
#include "core/fxcrt/fx_basic.h"
+class CFX_SAXCommentContext;
class CXFA_SAXContext;
+class CXFA_SAXReaderHandler;
+enum class CFX_SaxMode;
class CFX_SAXItem {
public:
@@ -55,9 +58,6 @@ class CFX_SAXFile {
uint32_t m_dwBufIndex;
};
-class CFX_SAXCommentContext;
-enum class CFX_SaxMode;
-
enum CFX_SaxParseMode {
CFX_SaxParseMode_NotConvert_amp = 1 << 0,
CFX_SaxParseMode_NotConvert_lt = 1 << 1,
@@ -68,8 +68,6 @@ enum CFX_SaxParseMode {
CFX_SaxParseMode_NotSkipSpace = 1 << 6
};
-class CXFA_SAXReaderHandler;
-
class CFX_SAXReader {
public:
CFX_SAXReader();
@@ -140,7 +138,7 @@ class CFX_SAXReader {
int32_t m_iNameSize;
int32_t m_iNameLength;
uint32_t m_dwParseMode;
- CFX_SAXCommentContext* m_pCommentContext;
+ std::unique_ptr<CFX_SAXCommentContext> m_pCommentContext;
};
#endif // XFA_FDE_XML_CFX_SAXREADER_H_