Age | Commit message (Collapse) | Author |
|
BUG=pdfium:298
TBR=weili@chromium.org
Review URL: https://codereview.chromium.org/1496703005 .
(cherry picked from commit 93181f9a20db7ac706bb9405750303db93762a5b)
Review URL: https://codereview.chromium.org/1514783002 .
|
|
Loosen a check for earlier version of PDF files. When the bytes with
specified length are followed by 'endstream' keyword, even if there is
no EOL marker before the keyword, it signals the end of stream.
BUG=551258
TBR=jun_fang@foxitsoftware.com
Review URL: https://codereview.chromium.org/1499433002 .
(cherry picked from commit 0ff66089c87ab6e3adaaff0ec69728ce7a8d8299)
Review URL: https://codereview.chromium.org/1504723002 .
|
|
RebuildCrossRef function returns false when we can not find file trailer
or any indirect object. This serves as a basic file format checking.
BUG=pdfium:215
TBR=jun_fang@foxitsoftware.com
Review URL: https://codereview.chromium.org/1476163002 .
(cherry picked from commit f14da1d58e8e12633c7a47e6efd5ffe43bb37b4b)
Review URL: https://codereview.chromium.org/1486383002 .
|
|
This first pass is GYP-only, will do GN in the next CL.
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1480403002 .
|
|
- add DrMemoryWrapper in common.py to adjust Dr. Memory wrapper
- add --wrapper option to run_*_tests.py for Dr. Mempry wrapper
- update run_*_tests.py to handle Dr. Memory wrapper
- add TestPDFiumTest in pdfium_tests.py to support run_*_tests.py
- remove ValgrindTool in valgrind_tests.py
R=thestig@chromium.org
BUG=pdfium:238
Review URL: https://codereview.chromium.org/1464453003 .
(cherry picked from commit 36476923ae5eb8e9283e605f3c85ee8811c86014)
Review URL: https://codereview.chromium.org/1465333002 .
|
|
Pull Jochen's fix before it is forgotten.
Original Review URL: https://codereview.chromium.org/1462313002 .
(cherry picked from commit 3ccd36892fe826e8f2ed8dde0819756ae3546733)
TBR=jochen@chromium.org
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1470443002 .
|
|
This matches the type of the corresponding |CFX_DIBSource::m_Pitch|,
where integer overflow is checked for FX_DWORD. This change is
propagated to many other places.
Also, check for integer overflow in |CCodec_RLScanlineDecoder::Create|
during the calculation of |m_Pitch| since it aligns to 4 bytes while
overflow was was previously checked without this alignment.
TBR=tsepez@chromium.org
BUG=555784
Review URL: https://codereview.chromium.org/1460033002 .
(cherry picked from commit e7950df70a2fd658f466751b29483436cb31e829)
Review URL: https://codereview.chromium.org/1461363002 .
|
|
During decoding, when an image decoder is encountered, any
subsequent decoders are ignored, but remain in the array. However,
later on CPDF_DIBSource::ValidateDictParam expects the image
decoder to be the last in the array, causing issues.
A check is also added in CPDF_DIBSource::GetScanline to ensure
that the calculated pitch value is <= the (4-aligned) pitch value in the
cached bitmap to prevent future issues.
Also cleans up some NULL usages.
BUG=552046
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1406943005 .
(cherry picked from commit 182d129bcee8f7731b9bbfde0064295ad3b37271)
Review URL: https://codereview.chromium.org/1436153003 .
|
|
CPDF_DIBSource::DownSampleScanline32Bit
Previously, if |m_bpc| was < 8 (e.g. 4), this function may still try to
access the source components as if |m_bpc| == 8. Even when it fell into
the codepath that tried to do the right thing in this case, it was
wrong.
BUG=554151
TBR=tsepez@chromium.org
Committed: https://pdfium.googlesource.com/pdfium/+/9b99615806e358fdb396d1cb162ee2e69c2a20ec
Review URL: https://codereview.chromium.org/1433423002 .
(cherry picked from commit e21fe98d5b5da7da01503b985b07b90c8e811689)
Review URL: https://codereview.chromium.org/1441563002 .
|
|
BUG=446715
R=thestig@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1353093003 .
Conflicts:
core/include/fpdfapi/fpdf_parser.h
core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp
core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
samples/pdfium_test.cc
testing/embedder_test.cpp
testing/embedder_test.h
Review URL: https://codereview.chromium.org/1412083010 .
|
|
Do some IWYU to fix build errors due to files that have no #includes but
just happened to work previously because the #includes were in the right
order.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1407423004 .
(cherry picked from commit 9e7cd8ffb81c564e1102f6c6459ec0942a0b11ea)
Review URL: https://codereview.chromium.org/1425163004 .
|
|
so tests can be run from any directory.
Previously the tests which read test files assume the current directory is under pdfium. Running from any other directory will break the build.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1408003014 .
(cherry picked from commit c0e93a9a942fe7d99800502a61d2fbb58cf9276f)
Conflicts:
core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
fpdfsdk/src/fpdfdoc_embeddertest.cpp
testing/embedder_test.cpp
testing/embedder_test.h
Review URL: https://codereview.chromium.org/1411403012 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1415803007 .
(cherry picked from commit 5899671184d01b74989d181363066379ef3e4051)
Review URL: https://codereview.chromium.org/1431593007 .
|
|
- In non-standalone builds, use the provided jpeg library.
- Run gn format over all the GN files.
- Also roll DEPS for buildtools to c2f2598.
- And fix XFA's lack of #includes.
BUG=541704
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1425153006 .
(cherry picked from commit 34bb6c58fe60206a08dc0a1f37b7cfe83e8c762c)
Review URL: https://codereview.chromium.org/1434543003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1417703011 .
|
|
This tests whether RebuildCrossRef could handle well-formatted pdf file.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1409013005 .
(cherry picked from commit 4544797e8998a31e7bc3f5439a5982f7f66dff26)
Review URL: https://codereview.chromium.org/1413343004 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1409993013 .
|
|
This regressed in commit 794c9b6.
BUG=551248
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1424743006 .
(cherry picked from commit 8cadf995e9a0fec8da19f69edac9d10fccca7eed)
(cherry picked from commit 955930dce7e4b5c764cdd34b134baea4207de523)
Review URL: https://codereview.chromium.org/1416663008 .
|
|
This is just a straight-forward, partial merge. It does not
actually make checkdeps succeed.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1419373005 .
(cherry picked from commit 79f5a32175293620abe456554e10efb7c3f4e7c6)
Review URL: https://codereview.chromium.org/1409153007 .
|
|
Also cleans up some places in the relevant functions since we're here.
BUG=551460
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1421783004 .
Clean merge.
(cherry picked from commit 4f85605cbc652a17bc833f883186e0a68af6006d)
Review URL: https://codereview.chromium.org/1405383009 .
|
|
This reverts commit a1215ba51a235fb7abcb995f0e768ea0176d9275.
Revert "Return result of the test runner."
This reverts commit d1579c9b92b7f9c1d9e0fac1ecb8e3cb23875fca.
Reverting the new test_runner code as there appears to be something string
happening on the non-Linux boxes on XFA.
It looks like it ran the font_size test twice, once with the .in and once with
the .pdf. The .in was suppressed, the .pdf faild and wasn't suppressed.
Rendering PDF file /Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.
Rendered 1 pages.
Skipped 0 bad pages.
Checking /Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.0.png
FAILURE: font_size.in; Command '['/Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/pdfium_diff', '/Volumes/data/b/build/slave/mac_xfa/build/pdfium/testing/resources/pixel/font_size_expected.pdf.0.png', '/Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.0.png']' returned non-zero exit status 1
font_size.in is suppressed, found in SUPPRESSIONS_mac file
Rendering PDF file /Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.
Rendered 1 pages.
Skipped 0 bad pages.
Checking /Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.0.png
FAILURE: font_size.pdf; Command '['/Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/pdfium_diff', '/Volumes/data/b/build/slave/mac_xfa/build/pdfium/testing/resources/pixel/font_size_expected.pdf.0.png', '/Volumes/data/b/build/slave/mac_xfa/build/pdfium/out/Debug/gen/pdfium/testing/pixel/font_size.pdf.0.png']' returned non-zero exit status 1
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1410743008 .
(cherry picked from commit e067f7bab4317704de27917c1befa8f57a0e78d7)
Review URL: https://codereview.chromium.org/1421133005 .
|
|
We need to actually return the result of the test runner....
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1413863011 .
(cherry picked from commit d1579c9b92b7f9c1d9e0fac1ecb8e3cb23875fca)
Review URL: https://codereview.chromium.org/1419953009 .
|
|
This CL takes the three test runners (corpus, javascript, pixel) and combines
the code into a single test_runner file. Each of the individual runners still
exists and calls the test runner with their data directory.
With this change, the pixel and javascript test will now run in parallel if
multiple processors are available.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1430623006 .
(cherry picked from commit a1215ba51a235fb7abcb995f0e768ea0176d9275)
Review URL: https://codereview.chromium.org/1411553010 .
|
|
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
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1407913005 .
(cherry picked from commit da6254ff78553773b7bb637ee1e3f5111c083c74)
Review URL: https://codereview.chromium.org/1423523005 .
|
|
This reverts commit 5bd88ec07e79215400777f3095c6843e0627cade.
(cherry picked from commit 97dd3fec106ac8a945e03ed1509af0a8b73da993)
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1430533003 .
|
|
These have gotten out of sync with master.
TBR=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1414943004 .
|
|
TBR=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1430663003 .
|
|
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 .
(cherry picked from commit dd4cd523ef4546b43d68e8ca6ec0a97fbe8954e9)
Review URL: https://codereview.chromium.org/1418563010 .
|
|
A template node is mandatory in XFA file. Pdfium should
ignore processing it when no template node is found in
XFA file.
BUG=pdfium:216
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1423903002 .
|
|
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
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1421973004 .
(cherry picked from commit 4ef782ab57979add3e3910d6bcfde6ef59f65724)
Review URL: https://codereview.chromium.org/1422253002 .
|
|
Revert "Add an embedded test case"
This reverts commit ec44186fdbca423eddf432be8b5c38914674023a.
Revert "Update the format"
This reverts commit 1df068061b5bb5e768a623318186523ffd251aaa.
Revert "Update .in file"
This reverts commit c13090439e1fbfd8a18c358058f137f897a7477b.
Revert "Address review comments"
This reverts commit 24967515b8be77a79aa1599f8fbf5d3ecbcd1769.
TBR=jun_fang@foxitsoftware.com
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1414033007 .
|
|
|
|
|
|
|
|
This limit mirrors FX_MAX_PAGE_LEVEL in fpdf_parser_document.cpp
Clean merge.
TBR=thestig@chromium.org
BUG=544880
Review URL: https://codereview.chromium.org/1421743003 .
(cherry picked from commit 3bfb1dcf56f8470b693ad1126e24e65f9d17926c)
Review URL: https://codereview.chromium.org/1418173003 .
|
|
Thanks Stack Overflow!
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1421623002 .
(cherry picked from commit 61fe6edb3f789feefa4bd0c8475b9645fae0d09e)
Review URL: https://codereview.chromium.org/1420543004 .
|
|
Original Review URL: https://codereview.chromium.org/1416713002 .
(cherry picked from commit 6d34d056a7188b7ae9800fe3ceb68645e0442879)
Conflicts:
BUILD.gn
samples/BUILD.gn
samples/pdfium_test.cc
samples/samples.gyp
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1413593003 .
|
|
Original Review URL: https://codereview.chromium.org/1411493002 .
(cherry picked from commit 8316a8a0274558f7a0f515e04bb13a7cca5762b2)
BUG=pdfium:217
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1405243004 .
|
|
PDF specs say that end of line markers shall follow the
keyword "stream". But a white space before end of line
markers follows this keyword in the test pdf files.
BUG=543018
R=thestig@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1401923005 .
|
|
Original Review URL: https://codereview.chromium.org/1404723002 .
(cherry picked from commit 7d54a9f70f977ce9b72959ef55dc6300713ccafe)
R=thestig@chromium.org
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1404193002 .
|
|
Original Review URL: https://codereview.chromium.org/1395733006 .
(cherry picked from commit f1c713663192368d26031a4caed1f9705f4510af)
Conflicts:
BUILD.gn
fpdfsdk/src/fpdfview.cpp
fpdfsdk/src/javascript/JS_Runtime.cpp
pdfium.gyp
samples/BUILD.gn
samples/samples.gyp
BUG=pdfium:211
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1393833006 .
|
|
- Use the number of cores as the default -j value
- Fall back to old code for -j 1
TBR=nparker@chromium.org
Review URL: https://codereview.chromium.org/1398793003 .
(cherry picked from commit fd751f28cecce61ab36038799043639d570e0b26)
Review URL: https://codereview.chromium.org/1395253002 .
|
|
New code changes in JS_Runtime.cpp.
(cherry picked from commit 3dedace9623fef6161a8666e53a4ab2b9be61e4c)
Original Review URL: https://codereview.chromium.org/1367033002 .
Also merge to XFA: Run FXJS_V8 embedder tests against a shared isolate,
since the two go together.
(cherry picked from commit 4ea721cb7954898a9722c389dae86c62957352d0)
Original Review URL: https://codereview.chromium.org/1377293004 .
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1381633008 .
|
|
(cherry picked from commit 5bd88ec07e79215400777f3095c6843e0627cade)
Original Review URL: https://codereview.chromium.org/1232803005 .
BUG=493126
R=thestig@chromium.org
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1237713004 .
|
|
(cherry picked from commit ccc8b21622a7d6a7723bc04e065e0ec3666dab64)
Original Review URL: https://codereview.chromium.org/1377403003 .
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1384053002 .
|
|
(cherry picked from commit 158e335717efba9dce3aa6f6d1e31ed884e1f59e)
Original Review URL: https://codereview.chromium.org/1353193004 .
TBR=jochen@chromium.org, krasin@google.com
Review URL: https://codereview.chromium.org/1376343002 .
|
|
For bit per component (bpc), PDF spec mentions that a RunLengthDecode or
DCTDecode filter shall always deliver 8-bit samples. However, some PDF files
don't follow this rule. We can find that filter is RunLengthDecode but bpc is
1 in the provided test file. In this case, pdfium will correct bpc to 8 but
the actual bpc is 1. It causes a failure because the data is much more than
the expected. To handle this case, pdfium doesn't correct bpc to 8 when the
original bpc is 1.
BUG=512557
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1328213002 .
|
|
(cherry picked from commit d6d9dc6b9a45368abdf43477592ee9f6cdb6102e)
(cherry picked from commit cfff2f65aaec70247d020188bc68a0dc4fb34c3e)
Original Review URL: https://codereview.chromium.org/1372963003 .
Original Review URL: https://codereview.chromium.org/1367813003 .
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/1370133007 .
|
|
The font is slightly different from Linux/Windows.
BUG=524043
TBR=jun_fang@foxitsoftware.com
Review URL: https://codereview.chromium.org/1366363002 .
(cherry picked from commit 6c5afa68ed4e21f9d0bfd1ecc01e824d946c5485)
Review URL: https://codereview.chromium.org/1361783004 .
|
|
Pdfium swallows 'fi' or 'ff' in some tested files because it doesn't load the embedded font file correctly. The root cause is that there is incorrect keyword like 'ngendstream' in the stream of the embedded font file. Pdfium tries to find another correct keyword but uses wrong offset rather than accumulated offset.
BUG=524043
TBR=jun_fang@foxitsoftware.com
Review URL: https://codereview.chromium.org/1307353005 .
(cherry picked from commit 9bd18183ba8210c91d71c3060146235750a4c71c)
Review URL: https://codereview.chromium.org/1365253003 .
|