| Index: core/fpdfdoc/cpvt_generateap.cpp
|
| diff --git a/core/fpdfdoc/cpvt_generateap.cpp b/core/fpdfdoc/cpvt_generateap.cpp
|
| index 28b436a05c330a5f1bed88565454fa5702321f78..24827e3f22461fc196ec106062cef2d3ef9ad242 100644
|
| --- a/core/fpdfdoc/cpvt_generateap.cpp
|
| +++ b/core/fpdfdoc/cpvt_generateap.cpp
|
| @@ -58,13 +58,12 @@ bool GenerateWidgetAP(CPDF_Document* pDoc,
|
|
|
| CPDF_Dictionary* pFontDict = pDRFontDict->GetDictFor(sFontName.Mid(1));
|
| if (!pFontDict) {
|
| - pFontDict = new CPDF_Dictionary(pDoc->GetByteStringPool());
|
| + pFontDict = pDoc->AddIndirectDictionary(pDoc->GetByteStringPool());
|
| pFontDict->SetNameFor("Type", "Font");
|
| pFontDict->SetNameFor("Subtype", "Type1");
|
| pFontDict->SetNameFor("BaseFont", "Helvetica");
|
| pFontDict->SetNameFor("Encoding", "WinAnsiEncoding");
|
| - pDRFontDict->SetReferenceFor(sFontName.Mid(1), pDoc,
|
| - pDoc->AddIndirectObject(pFontDict));
|
| + pDRFontDict->SetReferenceFor(sFontName.Mid(1), pDoc, pFontDict);
|
| }
|
| CPDF_Font* pDefFont = pDoc->LoadFont(pFontDict);
|
| if (!pDefFont)
|
| @@ -168,8 +167,8 @@ bool GenerateWidgetAP(CPDF_Document* pDoc,
|
| }
|
| CPDF_Stream* pNormalStream = pAPDict->GetStreamFor("N");
|
| if (!pNormalStream) {
|
| - pNormalStream = new CPDF_Stream;
|
| - pAPDict->SetReferenceFor("N", pDoc, pDoc->AddIndirectObject(pNormalStream));
|
| + pNormalStream = pDoc->AddIndirectStream();
|
| + pAPDict->SetReferenceFor("N", pDoc, pNormalStream);
|
| }
|
| CPDF_Dictionary* pStreamDict = pNormalStream->GetDict();
|
| if (pStreamDict) {
|
| @@ -183,8 +182,7 @@ bool GenerateWidgetAP(CPDF_Document* pDoc,
|
| pStreamResList->SetFor("Font", pStreamResFontList);
|
| }
|
| if (!pStreamResFontList->KeyExist(sFontName))
|
| - pStreamResFontList->SetReferenceFor(sFontName, pDoc,
|
| - pFontDict->GetObjNum());
|
| + pStreamResFontList->SetReferenceFor(sFontName, pDoc, pFontDict);
|
| } else {
|
| pStreamDict->SetFor("Resources", pFormDict->GetDictFor("DR")->Clone());
|
| pStreamResList = pStreamDict->GetDictFor("Resources");
|
| @@ -434,8 +432,7 @@ bool GenerateWidgetAP(CPDF_Document* pDoc,
|
| pStreamResList->SetFor("Font", pStreamResFontList);
|
| }
|
| if (!pStreamResFontList->KeyExist(sFontName))
|
| - pStreamResFontList->SetReferenceFor(sFontName, pDoc,
|
| - pFontDict->GetObjNum());
|
| + pStreamResFontList->SetReferenceFor(sFontName, pDoc, pFontDict);
|
| } else {
|
| pStreamDict->SetFor("Resources", pFormDict->GetDictFor("DR")->Clone());
|
| pStreamResList = pStreamDict->GetDictFor("Resources");
|
| @@ -559,7 +556,8 @@ CPDF_Dictionary* GenerateExtGStateDict(const CPDF_Dictionary& pAnnotDict,
|
|
|
| CPDF_Dictionary* GenerateResourceFontDict(CPDF_Document* pDoc,
|
| const CFX_ByteString& sFontDictName) {
|
| - CPDF_Dictionary* pFontDict = new CPDF_Dictionary(pDoc->GetByteStringPool());
|
| + CPDF_Dictionary* pFontDict =
|
| + pDoc->AddIndirectDictionary(pDoc->GetByteStringPool());
|
| pFontDict->SetNameFor("Type", "Font");
|
| pFontDict->SetNameFor("Subtype", "Type1");
|
| pFontDict->SetNameFor("BaseFont", "Helvetica");
|
| @@ -567,8 +565,7 @@ CPDF_Dictionary* GenerateResourceFontDict(CPDF_Document* pDoc,
|
|
|
| CPDF_Dictionary* pResourceFontDict =
|
| new CPDF_Dictionary(pDoc->GetByteStringPool());
|
| - pResourceFontDict->SetReferenceFor(sFontDictName, pDoc,
|
| - pDoc->AddIndirectObject(pFontDict));
|
| + pResourceFontDict->SetReferenceFor(sFontDictName, pDoc, pFontDict);
|
| return pResourceFontDict;
|
| }
|
|
|
| @@ -596,9 +593,9 @@ void GenerateAndSetAPDict(CPDF_Document* pDoc,
|
| CPDF_Dictionary* pAPDict = new CPDF_Dictionary(pDoc->GetByteStringPool());
|
| pAnnotDict->SetFor("AP", pAPDict);
|
|
|
| - CPDF_Stream* pNormalStream = new CPDF_Stream;
|
| + CPDF_Stream* pNormalStream = pDoc->AddIndirectStream();
|
| pNormalStream->SetData(sAppStream.GetBuffer(), sAppStream.GetSize());
|
| - pAPDict->SetReferenceFor("N", pDoc, pDoc->AddIndirectObject(pNormalStream));
|
| + pAPDict->SetReferenceFor("N", pDoc, pNormalStream);
|
|
|
| CPDF_Dictionary* pStreamDict = pNormalStream->GetDict();
|
| pStreamDict->SetIntegerFor("FormType", 1);
|
|
|