Age | Commit message (Collapse) | Author |
|
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
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1328213002 .
(cherry picked from commit 3500e90e9e42fa84dd6f07da16cfcf197ec98283)
Review URL: https://codereview.chromium.org/1377943002 .
|
|
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=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1307353005 .
(cherry picked from commit 9bd18183ba8210c91d71c3060146235750a4c71c)
Review URL: https://codereview.chromium.org/1374783002 .
|
|
BUG=522131
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1327913002 .
(cherry picked from commit 640c395fa9b76552383ccd0c5f4668ea698089f6)
Review URL: https://codereview.chromium.org/1310333007 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1297303002 .
|
|
- Make methods const.
- Make variables non-public.
- Remove LoadFile() method.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1293973002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1297593005 .
|
|
Lookups are log(n), but random insertions could result in n^2
behaviour. Replace with maps and sets.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1289703003 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1294683003 .
|
|
- Replace IFX_BidiChar with just CFX_BidiChar
- Document implementation
- Change out parameters to pointers
- Remove dead code
- Add an enum for bidi directions
- Move several externs to a header
- Add unit tests
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1197643002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1296383004 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1296403002 .
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1293153003 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1287053006 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1297723002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1296753003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1290383003 .
|
|
BUG=505316
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1293033002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1284193005 .
|
|
- Implement FPDFLink_GetLinkZOrderAtPoint().
- Implement FPDFPage_FormFieldZOrderAtPoint().
- Mark FPDPage_HasFormFieldAtPoint() as deprecated.
- Modify CPDF_LinkList and CPDF_InterForm to support new APIs.
- Clean up dead code in CPDF_LinkList and CPDF_InterForm.
BUG=chromium:515837
R=jun_fang@foxitsoftware.com, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1278053004 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1297713003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1292613003 .
|
|
Also remove unused kAddinNameCJK variable.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1296513003 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1289693008 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1294723002 .
|
|
BUG=pdfium:46
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1294693002 .
|
|
R=tsepez@chromium.org
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1294713002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1291213003 .
|
|
Cloning a CPDF_Stream actually happens via CPDF_Object::Clone().
Transitively, remove:
- GetStreamFilter()
-- all the filters.
R=jam@chromium.org
Review URL: https://codereview.chromium.org/1288543002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1287863002 .
|
|
R=thestig@chromium.org
Committed: https://pdfium.googlesource.com/pdfium/+/d8b5e73d8609b74e6a995ee1768d20d47bd4b089
Review URL: https://codereview.chromium.org/1268323004 .
|
|
This reverts commit d8b5e73d8609b74e6a995ee1768d20d47bd4b089.
Broke corpus tests
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1292153002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1268323004 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1278713003 .
|
|
BUG=pdfium:117
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1282653002 .
|
|
- Delete unneeded CFFL_ComboBox::CanCopy() and friends.
- Delete unneeded CFFL_FormFiller::CanCopy() and friends.
- Delete unneeded CFFL_TextField::CanCopy() and friends.
- Delete unneeded FormFiller::DoCopy() and friends.
- Rename CFFL_FormFiller::On{Set,Kill}Focus to avoid conflicts.
BUG=pdfium:185
R=thakis@chromium.org
Review URL: https://codereview.chromium.org/1283493004 .
|
|
Stub out failing platform entirely
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1276333006 .
|
|
Stub out failing platform.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1280043005 .
|
|
Windows uses the system implementation of itoa which goes
to 36.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1285433002 .
|
|
I thought about removing it, but decided to fix it instead until c++11
hits and there may be better alternatives.
Remove unused variants.
BUG=517854
R=brucedawson@chromium.org, thestig@chromium.org
Review URL: https://codereview.chromium.org/1274423003 .
|
|
Also add a presubmit that checks for this so I don't have to keep doing it.
No behavior change.
Generated by:
find . -name '*.cpp' -o -name '*.h' | \
grep -E -v 'third_party|thirdparties|lpng_v163' | \
xargs ../../buildtools/mac/clang-format -i
BUG=none
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1272653005 .
|
|
(Having renamed CFontFaceInfo to follow naming pattern).
Also cleanup some initialization-order noise in CFX_FontMapper.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1277883004 .
|
|
Adobe acrobat defines keywords "\nendstream\n" and "\nendobj\n" in object's stream.
However, Pdfium searches "endstream" and "endobj" as the keywords in the streams of objects.
Some words like "(endstream)" are wrongly treated as keywords in pdfium.
This fix follows Adobe's solution.
BUG=493126
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1219133005 .
|
|
This, in turn make m_bUseRange always false, so remove it.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1274883002 .
|
|
Move that operation closer to the embedder's call.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1269073003 .
|
|
Hence, some of the routines taking filename strings are unused. This,
in turn allows us to get rid of some other fopen-ishy looking things
inside the library.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1264423003 .
|
|
No behavior change.
Generated by:
find . -name '*.cpp' -o -name '*.h' | \
grep -E -v 'third_party|thirdparties|lpng_v163' | \
xargs ../../buildtools/mac/clang-format -i
See thread "tabs vs spaces" on pdfium@googlegroups.com for discussion.
BUG=none
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1265503005 .
|
|
FX_HFILE, and the routines that operate on it, are unused.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1259123008 .
|
|
Nearly a naming-only change, but add one argument to constructor.
grep now shows:
class CFX_AndroidFontInfo : public IFX_SystemFontInfo
class CFX_Win32FontInfo final : public IFX_SystemFontInfo
class CFX_ExternalFontInfo final : public IFX_SystemFontInfo
class CFX_FolderFontInfo : public IFX_SystemFontInfo
class CFX_MacFontInfo : public CFX_FolderFontInfo
class CFX_LinuxFontInfo : public CFX_FolderFontInfo
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1257743005 .
|
|
The design envisioned two kinds of font mappers: internal
(of type CFX_FontMapper), and external, both of which
implement a common interface. But there isn't any means of
making an external one, so the interface is redundant.
IFX_FontMapper also appears in an apple-specific struct,
but was never non-null or used in any way.
The CFX_FontMapper class provides its own mechanism to
include platform-specific features, as it turns out.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1259123005 .
|
|
If you want to check the number of bytes read, you need to
change the order of arguments.
TEST=testing/corpus/fx/mulobj/1/1_10_watermark.pdf.0.png
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1262453006 .
|