| Index: fpdfsdk/fpdf_flatten.cpp
|
| diff --git a/fpdfsdk/fpdf_flatten.cpp b/fpdfsdk/fpdf_flatten.cpp
|
| index 251da34d39035f31d30c7f5af6b2c1a5ffb3a779..4be0135da99dff9b245c25b3aee499b9b07a86d4 100644
|
| --- a/fpdfsdk/fpdf_flatten.cpp
|
| +++ b/fpdfsdk/fpdf_flatten.cpp
|
| @@ -17,8 +17,8 @@
|
| #include "core/fpdfapi/parser/cpdf_stream_acc.h"
|
| #include "core/fpdfdoc/cpdf_annot.h"
|
| #include "fpdfsdk/fsdk_define.h"
|
| +#include "third_party/base/stl_util.h"
|
|
|
| -typedef CFX_ArrayTemplate<CPDF_Dictionary*> CPDF_ObjectArray;
|
| typedef CFX_ArrayTemplate<CFX_FloatRect> CPDF_RectArray;
|
|
|
| enum FPDF_TYPE { MAX, MIN };
|
| @@ -65,7 +65,7 @@ void GetContentsRect(CPDF_Document* pDoc,
|
| void ParserStream(CPDF_Dictionary* pPageDic,
|
| CPDF_Dictionary* pStream,
|
| CPDF_RectArray* pRectArray,
|
| - CPDF_ObjectArray* pObjectArray) {
|
| + std::vector<CPDF_Dictionary*>* pObjectArray) {
|
| if (!pStream)
|
| return;
|
| CFX_FloatRect rect;
|
| @@ -77,13 +77,13 @@ void ParserStream(CPDF_Dictionary* pPageDic,
|
| if (IsValiableRect(rect, pPageDic->GetRectFor("MediaBox")))
|
| pRectArray->Add(rect);
|
|
|
| - pObjectArray->Add(pStream);
|
| + pObjectArray->push_back(pStream);
|
| }
|
|
|
| int ParserAnnots(CPDF_Document* pSourceDoc,
|
| CPDF_Dictionary* pPageDic,
|
| CPDF_RectArray* pRectArray,
|
| - CPDF_ObjectArray* pObjectArray,
|
| + std::vector<CPDF_Dictionary*>* pObjectArray,
|
| int nUsage) {
|
| if (!pSourceDoc || !pPageDic)
|
| return FLATTEN_FAIL;
|
| @@ -261,7 +261,7 @@ DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
|
| return FLATTEN_FAIL;
|
| }
|
|
|
| - CPDF_ObjectArray ObjectArray;
|
| + std::vector<CPDF_Dictionary*> ObjectArray;
|
| CPDF_RectArray RectArray;
|
|
|
| int iRet = FLATTEN_FAIL;
|
| @@ -329,7 +329,7 @@ DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
|
| }
|
|
|
| CFX_ByteString key = "";
|
| - int nStreams = ObjectArray.GetSize();
|
| + int nStreams = pdfium::CollectionSize<int>(ObjectArray);
|
|
|
| if (nStreams > 0) {
|
| for (int iKey = 0; /*iKey < 100*/; iKey++) {
|
| @@ -359,7 +359,7 @@ DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
|
| }
|
|
|
| for (int i = 0; i < nStreams; i++) {
|
| - CPDF_Dictionary* pAnnotDic = ObjectArray.GetAt(i);
|
| + CPDF_Dictionary* pAnnotDic = ObjectArray[i];
|
| if (!pAnnotDic)
|
| continue;
|
|
|
| @@ -453,8 +453,6 @@ DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
|
| }
|
| pPageDict->RemoveFor("Annots");
|
|
|
| - ObjectArray.RemoveAll();
|
| RectArray.RemoveAll();
|
| -
|
| return FLATTEN_SUCCESS;
|
| }
|
|
|