From 77b909e059283c1d4c1654a626fc05c584af11a3 Mon Sep 17 00:00:00 2001 From: tsepez Date: Thu, 9 Jun 2016 14:08:11 -0700 Subject: Remove more casts, part 7. Replacing a void* member in CFX_SAXItem saves lots of casts. Review-Url: https://codereview.chromium.org/2051233002 --- fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp') diff --git a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp b/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp index 9d8fb42059..c8aca0d5b0 100644 --- a/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp +++ b/fpdfsdk/fpdfxfa/fpdfxfa_doc.cpp @@ -677,8 +677,8 @@ void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, continue; if (!pPDFObj->IsReference()) continue; - CPDF_Object* pDirectObj = pPDFObj->GetDirect(); - if (!pDirectObj->IsStream()) + CPDF_Stream* pStream = ToStream(pPDFObj->GetDirect()); + if (!pStream) continue; if (pPrePDFObj->GetString() == "form") { m_pXFADocView->GetDoc()->SavePackage(XFA_HASHCODE_Form, &fileWrite, @@ -698,13 +698,10 @@ void CPDFXFA_Document::ExportData(CXFA_FFDoc* hDoc, fileWrite.WriteBlock(content.c_str(), fileWrite.GetSize(), content.GetLength()); } - - CPDF_Stream* pStream = (CPDF_Stream*)pDirectObj; - CPDF_StreamAcc* pAcc = new CPDF_StreamAcc; + std::unique_ptr pAcc(new CPDF_StreamAcc); pAcc->LoadAllData(pStream); fileWrite.WriteBlock(pAcc->GetData(), fileWrite.GetSize(), pAcc->GetSize()); - delete pAcc; } } } -- cgit v1.2.3