| Index: fpdfsdk/javascript/Document.cpp
|
| diff --git a/fpdfsdk/javascript/Document.cpp b/fpdfsdk/javascript/Document.cpp
|
| index 54761a2647f4e605f0099b8c1165767a7f107bf6..29f97648063381c2609b8c447336af2674bba997 100644
|
| --- a/fpdfsdk/javascript/Document.cpp
|
| +++ b/fpdfsdk/javascript/Document.cpp
|
| @@ -13,6 +13,7 @@
|
| #include "core/fpdfapi/page/cpdf_page.h"
|
| #include "core/fpdfapi/parser/cpdf_array.h"
|
| #include "core/fpdfapi/parser/cpdf_document.h"
|
| +#include "core/fpdfapi/parser/cpdf_string.h"
|
| #include "core/fpdfapi/parser/fpdf_parser_decode.h"
|
| #include "core/fpdfdoc/cpdf_interform.h"
|
| #include "core/fpdfdoc/cpdf_nametree.h"
|
| @@ -809,7 +810,7 @@ bool Document::info(IJS_Context* cc,
|
| // It's to be compatible to non-standard info dictionary.
|
| for (const auto& it : *pDictionary) {
|
| const CFX_ByteString& bsKey = it.first;
|
| - CPDF_Object* pValueObj = it.second;
|
| + CPDF_Object* pValueObj = it.second.get();
|
| CFX_WideString wsKey = CFX_WideString::FromUTF8(bsKey.AsStringC());
|
| if (pValueObj->IsString() || pValueObj->IsName()) {
|
| pRuntime->PutObjectString(pObj, wsKey, pValueObj->GetUnicodeText());
|
| @@ -844,7 +845,8 @@ bool Document::getPropertyInternal(IJS_Context* cc,
|
| }
|
| CFX_WideString csProperty;
|
| vp >> csProperty;
|
| - pDictionary->SetStringFor(propName, PDF_EncodeText(csProperty));
|
| + pDictionary->SetNewFor<CPDF_String>(propName, PDF_EncodeText(csProperty),
|
| + false);
|
| m_pFormFillEnv->SetChangeMark();
|
| }
|
| return true;
|
|
|