summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-11-02Add test for CPDF_StreamParser::ReadHexString.chromium/2555chromium/2554chromium/2553Dan Sinclair
This CL adds a unit test for the ReadHexString method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1408213008 .
2015-11-02Check fread() return values in CFX_FolderFontInfo::GetFontData().Lei Zhang
Check fseek() return values too. BUG=549998 R=thakis@chromium.org Review URL: https://codereview.chromium.org/1419793003 .
2015-11-02Add tests for CMap_GetCode and CMap_GetCodeRange.Dan Sinclair
This CL adds tests for the CMap_GetCode and CMap_GetCodeRange methods. To do so, it moves the methods to be static private members of CPDF_CMapParser and makes the test class a friend. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1414013005 .
2015-11-02Add a test for the HexDecode method.Dan Sinclair
I moved the declaration to be public, instead of having it implicit in one file and defined in a seperate cpp file. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1410873009 .
2015-11-02Remove _FPDF_ByteStringFromHex as it is unusedDan Sinclair
There are no uses of this method, I also checked the XFA branch and there don't appear to be any uses there either. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1427913006 .
2015-11-02Add test for StringToCode and StringToWideStringDan Sinclair
This CL adds a test case for the StringToCode and StringToWideString methods in fpdf_font.cpp. In order to do so, it moves the methods to be private methods of CPDF_ToUnicodeMap and make the tests friends of the class. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1428593005 .
2015-11-02Use standard true and false to replace 'TRUE' and 'FALSE' in pdfium_testJun Fang
BUG=446715 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1410073009 .
2015-11-02Support linearized loadingJun Fang
BUG=446715 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1353093003 .
2015-10-30Clean up CPDF_AnnotList.Lei Zhang
- Remove dead code - Stop using CFX_PtrArray - Mark more things const - Fix style nits R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1425093003 .
2015-10-30Port https://codereview.chromium.org/398163006 to gn.Nico Weber
BUG=376399 TBR=thestig Review URL: https://codereview.chromium.org/1415883010 .
2015-10-30Move a unique_ptr initialisation out of the initialisation list in fsdk_mgr.cppOliver Chang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1407103006 .
2015-10-30Convert a bunch of raw pointers in fsdk_mgr to unique_ptrs.Oliver Chang
R=tsepez@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1425233002 .
2015-10-30Remove two more unused variables that compilers now complain about.Nico Weber
TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1414073005 .
2015-10-30Remove external jpeg provider interface.Tom Sepez
It is unused in PDFium. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1407903005 .
2015-10-30Merge to master: Restore early return in FORM_DoPageAAction()Tom Sepez
The early return is present in master, but take the other code cleanup changes from XFA. (cherry picked from commit de4791d291b4252045d7922fb838c64d9b711fdf) Original Review URL: https://codereview.chromium.org/1425223002 . BUG=pdfium:259 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1415743008 .
2015-10-30chromium_code: Surrender in the gyp build for now.Nico Weber
This is too hard debug with only roll try runs. I'll try again when I have access to linux and windows boxen (monday). BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1415483003 .
2015-10-30More chromium_code whack-a-mole.Nico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1419943006 .
2015-10-30CPDFDoc_Environment::GetAnnotHandlerMgr() never returns nullptr.Lei Zhang
Remove checks for its return value. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1424233003 .
2015-10-30Rip out the KillFocusAnnot call from CPDFSDK_PageView's destructorOliver Chang
Previously, blur event actions could potentially touch deleted PageViews as CPDFSDK_Document deletes the PageViews one by one. This also fixes a related issue: CPDFSDK_Document::SetFocusAnnot no longer does anything if the document is being destroyed. Otherwise, it eventually tries to use m_pEnv->GetSDKDocument() at which point has already been set to NULL by FPDFDOC_ExitFormFillEnvironment. R=tsepez@chromium.org, thestig@chromium.org BUG=512445 Review URL: https://codereview.chromium.org/1414353007 .
2015-10-30chromium_code tweaks for Windows and Linux/gyp.Nico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1431563002 .
2015-10-30Fix incorrect CPDFSDK_PageView::CountAnnots(). (try 2)Lei Zhang
The original XFA version was correct, and the master version here is wrong. The two versions are now in sync, but incorrect. So we need to fix this here and then merge to XFA again. Also fix what are now incorrect uses of CountAnnots() and do some cleanups. BUG=543049 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1413973011 .
2015-10-30Turn on chromium_code (except -Wsign-compare, for now) for pdfiumNico Weber
BUG=pdfium:29 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1411583005 .
2015-10-30linux: Remove unneeded -L flags from static library targets.Nico Weber
-L isn't used for creating static libraries. This flag isn't present on non-Linux or in the gn file either. BUG=none R=thestig@chromium.org Review URL: https://codereview.chromium.org/1425213003 .
2015-10-30Add standard "Must be after no_chromium_code" comment in GN files.Lei Zhang
R=thakis@chromium.org Review URL: https://codereview.chromium.org/1411563004 .
2015-10-30Revert "Fix incorrect CPDFSDK_PageView::CountAnnots()."Lei Zhang
This reverts commit 9dd9439d23d44d105db0950e33af0cc913a6cece. BUG=536967 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1421583005 .
2015-10-30Fix incorrect CPDFSDK_PageView::CountAnnots().Lei Zhang
The original XFA version was correct, and the master version here is wrong. The two versions are now in sync, but incorrect. So we need to fix this here and then merge to XFA again. BUG=536967 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1406183007 .
2015-10-29Revert "Cleanup some numeric code."dan sinclair
This reverts commit 589f7e0a57675efce9810c15a3e9b7c49bf0bc90. Broke the build on Mac, unable to find std::isdigit. TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1428853002 .
2015-10-29Cleanup some numeric code.Dan Sinclair
This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1415933005 .
2015-10-29Cosmetic change to make fpdf_page_image.cpp identical to xfa.Tom Sepez
Also stray newline in fpdf_parser_document.cpp in master. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1424213004 .
2015-10-29Remove linearized path print statementsDan Sinclair
This CL makes the pdfium_test app a little less chatty by removing the print statements around linearized paths. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1415333007 .
2015-10-28Add PDFCharIsLineEnding helperDan Sinclair
This CL adds a helper to check if a given character is a \n or \r. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1418073006 .
2015-10-28Allow running individual tests.Dan Sinclair
This CL adds the ability to run a given test from the corpus, javascript and pixel test runners. The filename to provide is relative to the testing directory in question. Because the directories for javascript and pixel are flat you just provide the filename (it will rewrite the .pdf to .in if .pdf is provided). For corpus tests you have to provide the path from the corpus directory. Development/pdfium/pdfium % ./testing/tools/run_javascript_tests.py apply.pdf Rendering PDF file /Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/javascript/apply.pdf. Non-linearized path... Rendered 1 pages. Skipped 0 bad pages. Development/pdfium/pdfium % ./testing/tools/run_pixel_tests.py bug_524043_1.pdf Rendering PDF file /Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/pixel/bug_524043_1.pdf. Linearized path... Rendered 1 pages. Skipped 0 bad pages. Checking /Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/pixel/bug_524043_1.pdf.0.png diff: 0.00% passed Development/pdfium/pdfium % ./testing/tools/run_corpus_tests.py third_party/tcpdf/example_065.pdf Rendering PDF file /Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/corpus/example_065.pdf. Non-linearized path... Rendered 1 pages. Skipped 0 bad pages. Checking /Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/corpus/example_065.pdf.0.png diff: 0.14% failed FAILURE: example_065.pdf; Command '['/Development/pdfium/pdfium/out/Debug/pdfium_diff', '/Development/pdfium/pdfium/testing/corpus/third_party/tcpdf/example_065_expected.pdf.0.png', '/Development/pdfium/pdfium/out/Debug/gen/pdfium/testing/corpus/example_065.pdf.0.png']' returned non-zero exit status 1 Summary of Failures: /Development/pdfium/pdfium/testing/corpus/third_party/tcpdf/example_065.pdf R=thestig@chromium.org Review URL: https://codereview.chromium.org/1407913005 .
2015-10-28Add a NULL check in pdf_page_colors.cppOliver Chang
R=thestig@chromium.org BUG=548714 Review URL: https://codereview.chromium.org/1430653002 .
2015-10-28Add constants for the path operators.Dan Sinclair
This CL adds constants for some of the path operators to make it more obvious what is being checked. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1413783009 .
2015-10-28Check if document was opened during testing.Dan Sinclair
When we call OpenDocument we fail to check if the document was actually opened. Currently we return true in all cases (assuming we read the file). This CL updates the code to check if the document was opened and return false if not. I've updated several tests to check for FALSE instead of TRUE. I verified the documents in fact don't open with my local (non-PDFium) PDF reader. BUG=pdfium:223 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1417893007 .
2015-10-28Add PositionIsInBounds to CPDF_StreamParserDan Sinclair
This Cl moves all of the m_Size <= m_Pos and m_Pos >= m_Size checks to an PositionIsInBounds() helper. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1412793008 .
2015-10-28Add helpers to check the PDF_CharType.Dan Sinclair
This CL adds helpers to provide more descriptive access to PDF_CharType. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1407913004 .
2015-10-27Use static_cast for various CPDF_Object conversions.Dan Sinclair
This Cl converts a bunch of c-style casts to static_cast<CPDF_Object*>(). BUG=pdfium:201 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1428583003 .
2015-10-27Give names to the shading typesDan Sinclair
Currently the shading types are referenced by number. This Cl creates and enum and updates the code to use the enum names instead of magic numbers. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1418623011 .
2015-10-27Add context to file load failures in pdfium_test.Dan Sinclair
Currently if pdfium_test fails to load the document it just says it failed. This CL adds some extra context by looking at the error set by the load and reporting it to the user. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1413923006 .
2015-10-27Fix memory leak in FXJS_ReleaseRuntime.Oliver Chang
Should fix a bunch of JS related memory leaks reported by LSan/DrMemory. R=jochen@chromium.org, thestig@chromium.org, tsepez@chromium.org BUG=pdfium:242 Review URL: https://codereview.chromium.org/1417973009 .
2015-10-27Type check the m_pShadingObj before assuming it's a stream.Dan Sinclair
The m_pShadingObj can be a stream or a dictionary depending on how it's used. This CL adds some simple type checking to make sure that the type of the object matches what we expect. BUG=chromium:547706 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1421973004 .
2015-10-26Delete unused fpdfsdkdll.rc and resource.h.Lei Zhang
BUG=pdfium:241 R=brucedawson@chromium.org Review URL: https://codereview.chromium.org/1422193002 .
2015-10-26Remove usage of std::vector::dataOliver Chang
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1412823005 .
2015-10-26Partial revert of commit c6d8683 to fix a GN + Win/Clang build warning.chromium/2552chromium/2551chromium/2550chromium/2549chromium/2548Lei Zhang
BUG=547906 TBR=thakis@chromium.org Review URL: https://codereview.chromium.org/1420503012 .
2015-10-26Remove default argument from CPDF_Dictionary::SetAt().Lei Zhang
Also fix a potential object leak. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1414963005 .
2015-10-26Take FOXIT_FACE_COUNT and MM_FACE_COUNT constants from xfaTom Sepez
Make master closer to XFA and eliminate some magic numbers. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1410823005 .
2015-10-26Whitespace changes in fx_system_unittest.cpp to match XFATom Sepez
TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1418263003 .
2015-10-26Fix a leak in CPDF_SyntaxParser::GetObject().Lei Zhang
As seen in FPDFViewEmbeddertest.Crasher_451830. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1385803002 .
2015-10-26Revert "Make m_pShadingObj a CPDF_Stream instead of CPDF_Object."Dan Sinclair
There appear to be a bunch of corpus tests which fail with this change such as FAILURE: shading1.pdf This reverts commit 85361b227ad6786d2aeef8409b79a8d077a26ee9. Make m_pShadingObj a CPDF_Stream instead of CPDF_Object. This object is required to be a stream and was being converted as such. With the new type checking this caused us to pass a nullptr where previously we'd have, incorrectly, cast a CPDF_Dictionary to a CPDF_Stream. This CL changes the m_pShadingObj to always be a CPDF_Stream. Then, we never go down the bad code path because we check if m_pShadingObj is nullptr earlier and bail out. BUG=chromium:547706 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1414283003 .