Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(167)

Side by Side Diff: fpdfsdk/src/fpdf_flatten.cpp

Issue 1701073002: Split CPDF_PageObjectHolder off from CPDF_PageObjectList (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: m_pPage can never be null, remove checks. Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « fpdfsdk/include/pdfwindow/PWL_Edit.h ('k') | fpdfsdk/src/fpdfeditpage.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "public/fpdf_flatten.h" 7 #include "public/fpdf_flatten.h"
8 8
9 #include <algorithm> 9 #include <algorithm>
10 10
(...skipping 24 matching lines...) Expand all
35 return TRUE; 35 return TRUE;
36 } 36 }
37 37
38 FX_BOOL GetContentsRect(CPDF_Document* pDoc, 38 FX_BOOL GetContentsRect(CPDF_Document* pDoc,
39 CPDF_Dictionary* pDict, 39 CPDF_Dictionary* pDict,
40 CPDF_RectArray* pRectArray) { 40 CPDF_RectArray* pRectArray) {
41 CPDF_Page* pPDFPage = new CPDF_Page; 41 CPDF_Page* pPDFPage = new CPDF_Page;
42 pPDFPage->Load(pDoc, pDict, FALSE); 42 pPDFPage->Load(pDoc, pDict, FALSE);
43 pPDFPage->ParseContent(nullptr); 43 pPDFPage->ParseContent(nullptr);
44 44
45 FX_POSITION pos = pPDFPage->GetFirstObjectPosition(); 45 FX_POSITION pos = pPDFPage->GetPageObjectList()->GetHeadPosition();
46 while (pos) { 46 while (pos) {
47 CPDF_PageObject* pPageObject = pPDFPage->GetNextObject(pos); 47 CPDF_PageObject* pPageObject =
48 pPDFPage->GetPageObjectList()->GetNextObject(pos);
48 if (!pPageObject) 49 if (!pPageObject)
49 continue; 50 continue;
50 51
51 CPDF_Rect rc; 52 CPDF_Rect rc;
52 rc.left = pPageObject->m_Left; 53 rc.left = pPageObject->m_Left;
53 rc.right = pPageObject->m_Right; 54 rc.right = pPageObject->m_Right;
54 rc.bottom = pPageObject->m_Bottom; 55 rc.bottom = pPageObject->m_Bottom;
55 rc.top = pPageObject->m_Top; 56 rc.top = pPageObject->m_Top;
56 57
57 if (IsValiableRect(rc, pDict->GetRectBy("MediaBox"))) { 58 if (IsValiableRect(rc, pDict->GetRectBy("MediaBox"))) {
(...skipping 455 matching lines...) Expand 10 before | Expand all | Expand 10 after
513 pNewXObject->SetData((const uint8_t*)sStream, sStream.GetLength(), FALSE, 514 pNewXObject->SetData((const uint8_t*)sStream, sStream.GetLength(), FALSE,
514 FALSE); 515 FALSE);
515 } 516 }
516 pPageDict->RemoveAt("Annots"); 517 pPageDict->RemoveAt("Annots");
517 518
518 ObjectArray.RemoveAll(); 519 ObjectArray.RemoveAll();
519 RectArray.RemoveAll(); 520 RectArray.RemoveAll();
520 521
521 return FLATTEN_SUCCESS; 522 return FLATTEN_SUCCESS;
522 } 523 }
OLDNEW
« no previous file with comments | « fpdfsdk/include/pdfwindow/PWL_Edit.h ('k') | fpdfsdk/src/fpdfeditpage.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698