Age | Commit message (Collapse) | Author |
|
This is a reland of 77f15f7883638a4ced131d74c053af10a5970ce9
Original change's description:
> Avoid duplicate data buffering in CPDF_SyntaxParser::ReadStream().
>
> Allow sub-streams created from an IFX_SeekableReadStream to provide
> stream data without copying memory.
> The data will only reside in the top-level stream.
>
> For example:
> For file
> http://www.major-landrover.ru/upload/attachments/f/9/f96aab07dab04ae89c8a509ec1ef2b31.pdf
> (18 Mb)
>
> The memory usage is reduced by ~13 Mb.
>
> Change-Id: I2595c014d0fbe1fdd181cc04965cfd7d901c2d88
> Reviewed-on: https://pdfium-review.googlesource.com/35930
> Commit-Queue: Art Snake <art-snake@yandex-team.ru>
> Reviewed-by: dsinclair <dsinclair@chromium.org>
Change-Id: I4c4d5dcf42ff44784468ac7a7c302df509fc804d
Reviewed-on: https://pdfium-review.googlesource.com/37313
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
This reverts commit 77f15f7883638a4ced131d74c053af10a5970ce9.
Reason for revert: Causes crbug.com/860210
Bug: chromium:860210
Original change's description:
> Avoid duplicate data buffering in CPDF_SyntaxParser::ReadStream().
>
> Allow sub-streams created from an IFX_SeekableReadStream to provide
> stream data without copying memory.
> The data will only reside in the top-level stream.
>
> For example:
> For file
> http://www.major-landrover.ru/upload/attachments/f/9/f96aab07dab04ae89c8a509ec1ef2b31.pdf
> (18 Mb)
>
> The memory usage is reduced by ~13 Mb.
>
> Change-Id: I2595c014d0fbe1fdd181cc04965cfd7d901c2d88
> Reviewed-on: https://pdfium-review.googlesource.com/35930
> Commit-Queue: Art Snake <art-snake@yandex-team.ru>
> Reviewed-by: dsinclair <dsinclair@chromium.org>
TBR=tsepez@chromium.org,dsinclair@chromium.org,art-snake@yandex-team.ru
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I947fca17052765935a952a4f25ca48f6599c4af9
Reviewed-on: https://pdfium-review.googlesource.com/37210
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
Allow sub-streams created from an IFX_SeekableReadStream to provide
stream data without copying memory.
The data will only reside in the top-level stream.
For example:
For file
http://www.major-landrover.ru/upload/attachments/f/9/f96aab07dab04ae89c8a509ec1ef2b31.pdf
(18 Mb)
The memory usage is reduced by ~13 Mb.
Change-Id: I2595c014d0fbe1fdd181cc04965cfd7d901c2d88
Reviewed-on: https://pdfium-review.googlesource.com/35930
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Before calling a method that use EmbedderTest as FPDF_FILEWRITE
(usually calling FPDF_SaveAsCopy()), call:
OpenPDFFileForWrite("Filename.pdf");
After the write, close the stream with:
ClosePDFFileForWrite();
Change-Id: Id1e7f778a9ff2b2b5bf976d49b485d5cb15f94bd
Reviewed-on: https://pdfium-review.googlesource.com/34150
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
Applies std::remove_ptr to the public API types so that we can
deduce a correct unique ptr type no matter how that API might
change away from void* usage.
Creates shorter names for std::unique_ptr<std::remove_pointer<>, ...>
Change-Id: I04a0ff43cb7d5a4d3867939a53a54c9cef00db86
Reviewed-on: https://pdfium-review.googlesource.com/31292
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Allows run-time selection of whether to permit JS inside PDF. Previously,
this was a link-time decision only. This requires a little more caution
before we decide that we have the CJS_Runtime, and not the CJS_RuntimeStub
in a few casts.
Adds a kDisableJavaScript option to the form fill embeddertests.
Adds a --disable-javascript flag to the pdfium_test executable.
Also adds a --disable-xfa flag while we're at it.
Change-Id: I8d8ac95f6474459cadba9a60572fbb342e984646
Reviewed-on: https://pdfium-review.googlesource.com/31090
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Change-Id: I653619faa61181137795bb3675418fd8d0945d25
Reviewed-on: https://pdfium-review.googlesource.com/25590
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I8c6d813e488b2612a85fb1973382f979728df563
Reviewed-on: https://pdfium-review.googlesource.com/25571
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: I9286b24957f9d96da10869098eb0e04991bd6571
Reviewed-on: https://pdfium-review.googlesource.com/25570
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
- Keep track of pages in a single map when calling LoadPage(). It is
simpler and performance is not crucial as the number of loaded pages
is usually very small.
- Verify UnloadPage() is only called for loaded pages.
- Verify there are no loaded pages in TearDown().
- Verify RenderLoadedPage methods are only rendering loaded pages.
- Fix pages that are using FPDF_LoadPage() and FPDF_ClosePage() when
they should be using LoadPage() and UnloadPage().
- Disallow calling LoadPage() for the same page number repeatedly. No
caller does this and it makes verification in UnloadPage() harder.
Change-Id: I58878ea8ade21dde28f1bbebd3a3304ce677561d
Reviewed-on: https://pdfium-review.googlesource.com/25550
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Add replacement methods that make themselves clear as to what they are
rendering, and return unique_ptrs to help prevent leakage. Mark existing
methods deprecated.
Change-Id: I9055407e614dfbe765428fb32a7da64df3418d1d
Reviewed-on: https://pdfium-review.googlesource.com/25470
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
The class started with |foo_bar_| but now has a mixture of |foo_bar_|
and |m_FooBar|. Change them all to |foo_bar_|. While making this
change, also initialize the members in the header when possible.
Change-Id: I202ff5dc5e945175ad4da2f3245724f3493aa8aa
Reviewed-on: https://pdfium-review.googlesource.com/25390
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
This is a util method to output the png to a file for visually
validating the result of an embedder test. Once validated, the
md5 can be considered correct.
Bug: pdfium:981
Change-Id: I544dfbf2e85295e6ca2cdf48d1bc3f0bd5f415e9
Reviewed-on: https://pdfium-review.googlesource.com/22990
Reviewed-by: Nicolás Peña Moreno <npm@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
This CL moves the initialization of the V8 platform to happen in the
GTest environment so it's only run once. This takes the
CFXJSE_FormCalcContextEmbedderTest Debug time from ~25s to ~19s on my
local machine.
Bug: pdfium:928
Change-Id: Ie8c27606721e7056de42e7d9474b0621f1e7212f
Reviewed-on: https://pdfium-review.googlesource.com/22070
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Default arguments are banned on virtual functions. Remove default
arguments and rename OpenDocument() to OpenDocumentWithOptions(). Add
wrappers for OpenDocumentWithOptions() to call it with sensible options.
Change-Id: I4955d88cf77a7eab1771692ea3d6a18260b52900
Reviewed-on: https://pdfium-review.googlesource.com/21891
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
|
|
Change-Id: I405e3fcd23fb0fcffa5abdea6cb9a3ab6e62a8f6
Reviewed-on: https://pdfium-review.googlesource.com/18390
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
Bug: pdfium:614
Change-Id: I3c6cd16dfe0ac5db66cc9e996d3f4e74a5d9d716
Reviewed-on: https://pdfium-review.googlesource.com/18251
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: Id53f57085fecfe331c8cbfa6bb372b5ea5044442
Reviewed-on: https://pdfium-review.googlesource.com/18332
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
|
|
This CL fixes rounding issues with the colour values when written then
read from path objects.
Bug: pdfium:919
Change-Id: I8ab33706f1c7d81c3ec755706b1a613cf2a557b3
Reviewed-on: https://pdfium-review.googlesource.com/16270
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
Update embedder tests to simulate unavailable data and download requests.
Change-Id: I634fa89d2a0c859243e849752936da87568909f4
Reviewed-on: https://pdfium-review.googlesource.com/11890
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
This CL allows TestSaved to open password-protected and linearized
documents properly. It also adds a test with one such document.
BUG= pdfium:787
Change-Id: Ie0da7f290711505fb208794afdc737c36e84dd3c
Reviewed-on: https://pdfium-review.googlesource.com/7034
Commit-Queue: Nicolás Peña <npm@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
This CL adds helper methods for EmbedderTest to save. This means that
TestSaver is no longer needed and all the methods it uses are moved to
the EmbedderTest.
Change-Id: I740f29699bfd8c6b570cb1fd85e7aab9bc1d3f6f
Reviewed-on: https://pdfium-review.googlesource.com/7171
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Nicolás Peña <npm@chromium.org>
|
|
1. Added APIs for retrieving existing annotation paths and setting
annotation paths.
* Added an embedder test testing all the new functions.
Bug=pdfium:737
Change-Id: Ic451bcd3be488261baf2182549c4238b887b219e
Reviewed-on: https://pdfium-review.googlesource.com/6676
Commit-Queue: Jane Liu <janeliulwq@google.com>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Currently, in embedder tests, pages can only be rendered with no flags
specified. With the addition of annotation APIs and corresponding
embedder tests, it is helpful to add a test method to allow flags to be
passed in when rendering pages in embedder tests.
This CL adds such a method.
Bug=pdfium:737
Change-Id: I277831cb2e228154e9a65b078a241b8e61220664
Reviewed-on: https://pdfium-review.googlesource.com/6711
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Jane Liu <janeliulwq@google.com>
|
|
It's possible to create a stream of length 0 in a PDF document.
Currently the code will early exit and return a nullptr. This causes
issues when you want to print the given PDF as the FPDF_ImportPages code
ends up only generating up to the zero length object.
This CL allows creating streams with length 0 and updates the PDF saving
code to output a blank stream.
Bug: chromium:732380
Change-Id: I44182ba4aaac7c51284b002ba01bbc34b6bcf9e0
Reviewed-on: https://pdfium-review.googlesource.com/6490
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
|
|
BUG=chromium:703912
Change-Id: I5b4e582afc95b845e8e5e7a4e14581127c18de2d
Reviewed-on: https://pdfium-review.googlesource.com/3193
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Nicolás Peña <npm@chromium.org>
|
|
md5's with text are changed, so need to allow both the previous and the new one.
Pixel tests with text also fail on 10.12, so suppressing those.
Found many unexpected successes, so will unsuppress those once all bots are 10.12
BUG=chromium:703912
Change-Id: I6b34aa2f581eb8ea705f3876960b49c89e249347
Reviewed-on: https://pdfium-review.googlesource.com/3144
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Nicolás Peña <npm@chromium.org>
|
|
Review-Url: https://codereview.chromium.org/2514173002
|
|
When unloading a page in the embedder tests we need to cleanup the internal
page map so if we load the page a second time we don't get a previously unloaded
page.
Review-Url: https://codereview.chromium.org/2322523002
|
|
Embedder test's delegate function GetPage() calls FPDF_LoadPage() to
load a page which may be already loaded by embedder test itself.
Thus the page's ref count is increased unnecessarily.
This causes the page to be leaked. Fix this by putting the page map in
embedder test class and guarantee the page is loaded only once.
Also, fix leaks in this embedder tests by unloading the loaded pages to
properly release the resource.
BUG=pdfium:242
Review-Url: https://codereview.chromium.org/2258333002
|
|
Review-Url: https://codereview.chromium.org/2068563002
|
|
BUG=pdfium:496
Review-Url: https://codereview.chromium.org/2005653002
|
|
Orignal Review URL: https://codereview.chromium.org/1563513002 .
(cherry picked from commit aa326bd6b169dc1b5b9b83048c71799799ab34c6)
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1564583004 .
|
|
Original Review URL: https://codereview.chromium.org/1554133003 .
(cherry picked from commit d368261cc8d604286e29ca6358700e6bb051dcaa)
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1567643002 .
|
|
TBR=thakis@chromium.org
Review URL: https://codereview.chromium.org/1547833002 .
(cherry picked from commit d20dfba2ae10e8aeb328328f09da79ff904110a8)
Review URL: https://codereview.chromium.org/1545183002 .
|
|
BUG=515137,564736
TBR=ochang@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1533233002 .
Review URL: https://codereview.chromium.org/1544493003 .
(cherry picked from commit b426e3edde040089b70d1a223c83b90957aa571d)
(cherry picked from commit bd35d484a4027775f19ff93e9143e0b270133d42)
Review URL: https://codereview.chromium.org/1546443002 .
|
|
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 .
|
|
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 .
|
|
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 .
|
|
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 9241e5a43990859f6f9a94aaa2c488d0451039e3)
Original Review URL: https://codereview.chromium.org/1312313006 .
(cherry picked from commit 343dbb841f4c12e819932e2b66dd70f817337d97)
Original Review URL: https://codereview.chromium.org/1325533004 .
BUG=507316
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1332653002 .
|
|
No behavior change.
Generated by:
find . -name '*.cpp' -o -name '*.h' | \
grep -E -v 'third_party|thirdparties|lpng_v163|tiff_v403' | \
xargs ../../buildtools/mac/clang-format -i
Then manually merged https://codereview.chromium.org/1269223002/
See thread "tabs vs spaces" on pdfium@googlegroups.com for discussion.
BUG=none
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1176333002.
(cherry picked from commit 0ef0de55657db8a83372ad8eb22d84c5893afc4c)
Review URL: https://codereview.chromium.org/1195943005.
|
|
Original Review URL: https://codereview.chromium.org/1153213004
R=thestig@chromium.org
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1158483004
|
|
Original Review URL: https://codereview.chromium.org/1135913002
BUG=pdfium:154
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1136703003
|
|
Original Review URL: https://codereview.chromium.org/960663002
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/960703002
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/891763003
|
|
This includes:
fa370ac Fix test naming in previous commit.
e0bbe4a Fix null crash in CheckTrailer.
TBR=bo_xu@foxitsoftware.com
Review URL: https://codereview.chromium.org/870173002
|