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>
|
|
Do not return size within CPDF_StreamAcc in case when read
data failed.
Also free buffers in this case.
Bug: chromium:860210
Change-Id: Ifb2a061d7c8427409b68c33f213c5c55343fb946
Reviewed-on: https://pdfium-review.googlesource.com/37310
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Currently, not necessary to store the cross ref v5 obj within
CPDF_IndirectObjectHolder(CPDF_Document), because all
necessary data from the cross ref are parsed or cloned, and
owned by CPDF_Parser seperately from CPDF_IndirectObjectHolder.
Also this fix regression from commit 4ea4459e.
BUG=chromium:810768
Change-Id: I0d1a11ff027210f4f15804a69d12416838ec9815
Reviewed-on: https://pdfium-review.googlesource.com/37110
Reviewed-by: Lei Zhang <thestig@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>
|
|
The limit parameter is always set to 0.
Change-Id: Idf7f44e1c5a895e05ad474932d3e9df85f435e3f
Reviewed-on: https://pdfium-review.googlesource.com/36990
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@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>
|
|
For DocumentLoader we should do reconnect to skip non-requested blocks
on each requested offset jump.
To reduce reconnections, read stream data first, then do all checks.
Thereby the DocumentLoader will continue loading data without
reconnections.
Change-Id: I344d045e59c5de9e1a4aed0002ea122caa92f240
Reviewed-on: https://pdfium-review.googlesource.com/13450
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: Ide081e462c83a5a209a2e6462dd12b298993f36f
Reviewed-on: https://pdfium-review.googlesource.com/36850
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: Ib9b30f7f4e1c41b0e2e2c1757252736599055c96
Reviewed-on: https://pdfium-review.googlesource.com/36870
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: I711508cdffd9756837657390d73b88c2d8c62db5
Reviewed-on: https://pdfium-review.googlesource.com/36891
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I293730ea5981ba8e2dca7a522b9036fa62d7cd35
Reviewed-on: https://pdfium-review.googlesource.com/36890
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
This enables more complicated cleanup when an observed object
is destroyed. Use it to make documents observable and to allow
the CPDF_Avail to cleanup without the need for intermediate class.
Change-Id: I3a8e758b7ff542e0a58710eff1ac8017205cbd45
Reviewed-on: https://pdfium-review.googlesource.com/36373
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Merge page info data from Hints Table into CPDF_HintsTable::PageInfo class.
Change-Id: I468996346ee153e3fa8ada6a83770614362d1b92
Reviewed-on: https://pdfium-review.googlesource.com/15813
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Change-Id: I0f2bf1cb44b4cba872a719f0a75d8776f413812c
Reviewed-on: https://pdfium-review.googlesource.com/36250
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I9ded1664564c330132f43047293e18696d77fc7d
Reviewed-on: https://pdfium-review.googlesource.com/36310
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
|
|
No longer needed after commit 20eca1e3
Change-Id: Ica4f67d2a2df760ebf9fd507283791271ad407cd
Reviewed-on: https://pdfium-review.googlesource.com/36351
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
Commit 0145b89a removed the only caller.
Change-Id: Ib3b7eaa0bc8be986f7d290f1efaea519d68daf6b
Reviewed-on: https://pdfium-review.googlesource.com/36251
Reviewed-by: Art Snake <art-snake@yandex-team.ru>
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Kinda like reaching a commit point, makes going forward more useful.
Change-Id: I7695b6e627d4cd8ed2bccb667d0cabd7f42c7b1c
Reviewed-on: https://pdfium-review.googlesource.com/35970
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Improve CPDF_Document interface.
Fix relationship between CPDF_Document and CPDF_Parser.
This CL changes CPDF_Document to internally create the CPDF_Parser
and removes the need for the CPDF_Parser to know about the CPDF_Document.
Change-Id: Iec7aef19575c90f30b9a6c919dfd4f4417e4caf2
Reviewed-on: https://pdfium-review.googlesource.com/35630
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I5ac61ab323adb5eec2de8660064fff95ee877b5e
Reviewed-on: https://pdfium-review.googlesource.com/35432
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Ideally, unowned ptrs might well be const, as updating something
through an unowned reference is best avoided.
Change-Id: Ida8111ffe0ee1e30bbf6b7718b0929dfb5cafdff
Reviewed-on: https://pdfium-review.googlesource.com/36050
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Use CPDF_SyntaxParser to read data, instead manual cache.
Simplify merging trailers logic.
Change-Id: Icaa569f1082cde6dc9437a375c5c27e187fd6c79
Reviewed-on: https://pdfium-review.googlesource.com/35431
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: Ibf7aee942027adace7ec0831aefe0fe8c28e41cc
Reviewed-on: https://pdfium-review.googlesource.com/35610
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
It is allow do not store raw objects streams within CPDF_Document
for reduce memory usage.
Change-Id: I4377bd5119d87314e76f14255171618cf6ee533d
Reviewed-on: https://pdfium-review.googlesource.com/35430
Reviewed-by: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
In turn, this requires making some of the tests use an indirect
root dictionary so as to satisfy the lifetime requirements.
Change-Id: Ibdbe294a76200d4486134e5848c169a6c2d802bf
Reviewed-on: https://pdfium-review.googlesource.com/36110
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Move receiving "Info" dictionary form API implementation to CPDF_Document.
Also added test.
Bug: pdfium:664
Change-Id: I273980750fbdd4d20711f651245780fc9ba02789
Reviewed-on: https://pdfium-review.googlesource.com/35490
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
|
|
Because the invisible temporary goes out of scope at the next
semicolon.
Also avoid returning const string references since the cost is
low to properly keep the string alive.
Change-Id: Id283e4fd99f79a02d79d739a533a4ce05e831e2a
Reviewed-on: https://pdfium-review.googlesource.com/35710
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Remove some string copies in barcode that were noticed whilst
looking for moves.
Change-Id: Ieda34d00f633576ba1f0dca283dcdabfb36f236c
Reviewed-on: https://pdfium-review.googlesource.com/35410
Reviewed-by: dsinclair <dsinclair@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
Change-Id: I4a2905f9ce4433e8c00b274fa9703ff4dc459e95
Reviewed-on: https://pdfium-review.googlesource.com/35510
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I020fd5ae11b32f753d681e7e0c26b7f95e920bff
Reviewed-on: https://pdfium-review.googlesource.com/15812
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Change-Id: If120ee16c53117ae148447e141cbbd8143194b36
Reviewed-on: https://pdfium-review.googlesource.com/15811
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I153747ef587a184eaef58ff09dbf8f214c9ddfb3
Reviewed-on: https://pdfium-review.googlesource.com/17230
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Also avoids confusion with unrelated FPDF_PAGE API type.
Bug: pdfium:1085
Change-Id: I36569573f020f0b87f13630bbab91caf351e4994
Reviewed-on: https://pdfium-review.googlesource.com/34830
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
This is a reland of d89f1bf48f017ab9f56df13299f75a906ed33cd0
Original change's description:
> Reland "Simplify CPDF_HintsTable."
>
> This is a reland of 33591752d2cb14f2e07726ca52afce6efbdc07c9
>
> Original change's description:
> > Simplify CPDF_HintsTable.
> >
> > Use CPDF_LinearizedHeader directly.
> >
> > Change-Id: Id12402ef6e6f92fef68d0932df2e1ccb2dcf06aa
> > Reviewed-on: https://pdfium-review.googlesource.com/15770
> > Reviewed-by: Lei Zhang <thestig@chromium.org>
> > Commit-Queue: Lei Zhang <thestig@chromium.org>
>
> Change-Id: I2b5425a6533f4ce237f9ae6c483caa517105a5f7
> Reviewed-on: https://pdfium-review.googlesource.com/34130
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Change-Id: If34c4ea05db7c9abaf2ba75ebe1abaabb962dd88
Reviewed-on: https://pdfium-review.googlesource.com/34410
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Bug=chromium:850407,chromium:850440
Change-Id: I0115f75677db618b0de5e1e78b13da80b1da9559
Reviewed-on: https://pdfium-review.googlesource.com/34390
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
|
|
This reverts commit d89f1bf48f017ab9f56df13299f75a906ed33cd0.
Reason for revert:
This CL has introduced at least two CF issues chromium:850407,chromium:850440. Additionally there is a number of changes that remove bounds checks, which I think are suspect.
BUG=chromium:850407,chromium:850440
Original change's description:
> Reland "Simplify CPDF_HintsTable."
>
> This is a reland of 33591752d2cb14f2e07726ca52afce6efbdc07c9
>
> Original change's description:
> > Simplify CPDF_HintsTable.
> >
> > Use CPDF_LinearizedHeader directly.
> >
> > Change-Id: Id12402ef6e6f92fef68d0932df2e1ccb2dcf06aa
> > Reviewed-on: https://pdfium-review.googlesource.com/15770
> > Reviewed-by: Lei Zhang <thestig@chromium.org>
> > Commit-Queue: Lei Zhang <thestig@chromium.org>
>
> Change-Id: I2b5425a6533f4ce237f9ae6c483caa517105a5f7
> Reviewed-on: https://pdfium-review.googlesource.com/34130
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Commit-Queue: Art Snake <art-snake@yandex-team.ru>
TBR=thestig@chromium.org,tsepez@chromium.org,art-snake@yandex-team.ru
Change-Id: I463b5b1330f809c2cb508cbf46a804b7a11526e4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://pdfium-review.googlesource.com/34350
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
This is a reland of 33591752d2cb14f2e07726ca52afce6efbdc07c9
Original change's description:
> Simplify CPDF_HintsTable.
>
> Use CPDF_LinearizedHeader directly.
>
> Change-Id: Id12402ef6e6f92fef68d0932df2e1ccb2dcf06aa
> Reviewed-on: https://pdfium-review.googlesource.com/15770
> Reviewed-by: Lei Zhang <thestig@chromium.org>
> Commit-Queue: Lei Zhang <thestig@chromium.org>
Change-Id: I2b5425a6533f4ce237f9ae6c483caa517105a5f7
Reviewed-on: https://pdfium-review.googlesource.com/34130
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Change-Id: I34403490672b752bed9d5b6b29e8f4422c0fbf95
Reviewed-on: https://pdfium-review.googlesource.com/17732
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I4475b83f69426b135c304d5861f0b7bb582deb81
Reviewed-on: https://pdfium-review.googlesource.com/17731
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|
|
Change-Id: I68b88e013ac542f245dbe7b6889799c814d46eb8
Reviewed-on: https://pdfium-review.googlesource.com/33690
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: Lei Zhang <thestig@chromium.org>
|
|
This reverts commit 80c6ab7b99bcbd7b940f78dc0cac52c30249f59c.
Reason for revert: (void) idiom is prevalent through out C++ code.
Original change's description:
> Convert (void) to static_cast<void> in C++ code
>
> Converting instances of old C-style void casts to suppress return
> values to use C++ style static cases. There are a few examples of
> (void) that remain, since they are in C code, and the third_party/
> instances are not touched at all.
>
> Change-Id: I72b3fc0e1d713db669b76135e03d1cf87873a2fe
> Reviewed-on: https://pdfium-review.googlesource.com/33790
> Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
> Commit-Queue: Ryan Harrison <rharrison@chromium.org>
TBR=thestig@chromium.org,tsepez@chromium.org,dsinclair@chromium.org,hnakashima@chromium.org,rharrison@chromium.org
Change-Id: Ib6cc021c97cb1ea7c71b90346fa9b500659f565d
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://pdfium-review.googlesource.com/33890
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
Ensure that FPDF_GetPageSizeByIndex() doesn't do a full page parse.
Issue was noticed on CL https://pdfium-review.googlesource.com/32830
Change-Id: I51966e0b91e1a002d33ee51f00c0428fa1cda04d
Reviewed-on: https://pdfium-review.googlesource.com/33792
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I61c92050b034fbffa747a2519aba368e9678afcd
Reviewed-on: https://pdfium-review.googlesource.com/15850
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Change-Id: I68bd9004cb034df749625f4c83072b08d33202e4
Reviewed-on: https://pdfium-review.googlesource.com/17730
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
Reviewed-by: dsinclair <dsinclair@chromium.org>
|
|
Converting instances of old C-style void casts to suppress return
values to use C++ style static cases. There are a few examples of
(void) that remain, since they are in C code, and the third_party/
instances are not touched at all.
Change-Id: I72b3fc0e1d713db669b76135e03d1cf87873a2fe
Reviewed-on: https://pdfium-review.googlesource.com/33790
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
Landed https://pdfium-review.googlesource.com/c/pdfium/+/33592 without
addressing some comments that appeared after I sent it to CQ, this
addresses them.
Change-Id: Ic9c4d81328aafee6ff8431460c5b8b674e25ad38
Reviewed-on: https://pdfium-review.googlesource.com/33712
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
|
|
This reverts commit f0d9d28a034fe3650c3c2d662090c1e8687ddb16.
Reason for revert: avoid parsing page.
Change-Id: Id3478f7e38f1cbe95d098e00158b1d7d9dc6f76e
Reviewed-on: https://pdfium-review.googlesource.com/33750
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
|
|
prev_offset is written multiple times through out
CPDF_CrossRefAvailTest, but not read until it is written
again. Removing this unused intermediate writes.
Issues found with Clang Static Analyzer.
Change-Id: I980263b8be7f691c030e937a05f248fd9b133fb4
Reviewed-on: https://pdfium-review.googlesource.com/33592
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
|
|
Inverting the ownership from the current situation makes cleanup
much more intuitive.
Change-Id: Iad9a7ca70c0746170ba753297732e3e34f96c5ba
Reviewed-on: https://pdfium-review.googlesource.com/33190
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Reviewed-by: Nicolás Peña Moreno <npm@chromium.org>
|
|
Change-Id: I71417cc5b1bd00f77d42740198cc17487ebd686e
Reviewed-on: https://pdfium-review.googlesource.com/33330
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Art Snake <art-snake@yandex-team.ru>
|