From 156de02596e91490bf2432686d0d3c91a5c1a26e Mon Sep 17 00:00:00 2001 From: dsinclair Date: Wed, 24 Aug 2016 11:58:24 -0700 Subject: Removing CPDF_Parser::CloseParser. Currently the only calls to CloseParser() happend in the destructor or the start*Parse methods. The Start*Parse methods are currently only called on freshly constructed parsers in fpdf_dataavail and fpdfview. This CL removes the CloseParser() method and puts the contents in the destructor. We then add an ASSERT that we don't re-enter the parser after it has already completed the parse. Review-Url: https://codereview.chromium.org/2267173005 --- fpdfsdk/fpdfview.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'fpdfsdk') diff --git a/fpdfsdk/fpdfview.cpp b/fpdfsdk/fpdfview.cpp index 0c3a95d094..dee71ac9e2 100644 --- a/fpdfsdk/fpdfview.cpp +++ b/fpdfsdk/fpdfview.cpp @@ -367,7 +367,8 @@ DLLEXPORT FPDF_DOCUMENT STDCALL FPDF_LoadDocument(FPDF_STRING file_path, std::unique_ptr pDocument( new CPDF_Document(std::move(pParser))); - CPDF_Parser::Error error = pParser->StartParse(pFileAccess, pDocument.get()); + CPDF_Parser::Error error = + pDocument->GetParser()->StartParse(pFileAccess, pDocument.get()); if (error != CPDF_Parser::SUCCESS) { ProcessParseError(error); return nullptr; -- cgit v1.2.3