summaryrefslogtreecommitdiff
path: root/core/fpdfdoc/doc_form.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfdoc/doc_form.cpp')
-rw-r--r--core/fpdfdoc/doc_form.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/core/fpdfdoc/doc_form.cpp b/core/fpdfdoc/doc_form.cpp
index 5062b45452..d356a5c0e1 100644
--- a/core/fpdfdoc/doc_form.cpp
+++ b/core/fpdfdoc/doc_form.cpp
@@ -48,11 +48,12 @@ CFX_WideString FPDFDOC_FDF_GetFieldValue(const CPDF_Dictionary& pFieldDict,
class CFieldNameExtractor {
public:
- explicit CFieldNameExtractor(const CFX_WideString& full_name) {
- m_pStart = full_name.c_str();
- m_pEnd = m_pStart + full_name.GetLength();
- m_pCur = m_pStart;
+ explicit CFieldNameExtractor(const CFX_WideString& full_name)
+ : m_FullName(full_name) {
+ m_pCur = m_FullName.c_str();
+ m_pEnd = m_pCur + m_FullName.GetLength();
}
+
void GetNext(const FX_WCHAR*& pSubName, FX_STRSIZE& size) {
pSubName = m_pCur;
while (m_pCur < m_pEnd && m_pCur[0] != L'.') {
@@ -65,10 +66,11 @@ class CFieldNameExtractor {
}
protected:
- const FX_WCHAR* m_pStart;
- const FX_WCHAR* m_pEnd;
+ CFX_WideString m_FullName;
const FX_WCHAR* m_pCur;
+ const FX_WCHAR* m_pEnd;
};
+
class CFieldTree {
public:
struct _Node {