Age | Commit message (Collapse) | Author |
|
TBR=thakis@chromium.org
Review URL: https://codereview.chromium.org/1545823002 .
|
|
R=dml@google.com, thakis@chromium.org
Review URL: https://codereview.chromium.org/1544923002 .
|
|
This reverts commit 2d63eaaa39bb3d402c658b2a6e0eae50a30f1d89.
Broke the Windows build, though it is likely the code is unused on
Windows too.
Review URL: https://codereview.chromium.org/1540993004 .
|
|
- Simplify remaining encoders.
- Hook up more of the encoding paths so failures get returned.
- Clean up code to not pass by non-const ref, use bools, etc.
R=ochang@chromium.org
Review URL: https://codereview.chromium.org/1545563003 .
|
|
Rename a few other things along the way:
CPDF_ProgressiveImageLoaderHandle becomes ImageLoaderHandle,
since its the only kind, and stop casting it to void*.
CPDF_ImageLoader::StartLoadImage() becomes Start(), since
the rest is redundant.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1535243002 .
|
|
Orignal Review URL: https://codereview.chromium.org/1539983002 .
(cherry picked from commit 0fa6fee0e48af8681f0cd50f6a9471ecc0a46c11)
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1536123002 .
|
|
Apart from it never being initialized, note that m_status
is never set to 1, so the only path that references this
class can't be reached.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1537103002 .
|
|
- Remove unused Clear() method.
- Replace Create() with actual ctors.
- Avoid const casts.
- Protect members.
- Add missing const in adjacent code.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1536623004 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1520063002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1512763013 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1521563002 .
|
|
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1514283002 .
|
|
Also clean up while we're here.
BUG=557223
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1512833008 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1520643002 .
|
|
These are synonyms for CFX_Matrix.
Nothing but sed and manual deletion of 2 #defines in
fpdf_parser.h and fx_coordinates.h
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1513363002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1507043004 .
|
|
I didn't go whole hog and replace these with std::vector,
but in the mean time, it is silly to cast a typedef for
a template instantiated against void* when we can just
instantiate the template against the actual type.
The ones that remain are actual heterogeneous arrays with
wacky casting.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1518593002 .
|
|
That refer to parent directories.
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1434223002 .
|
|
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
R=jun_fang@foxitsoftware.com, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1406943005 .
|
|
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
R=tsepez@chromium.org, thestig@chromium.org
Committed: https://pdfium.googlesource.com/pdfium/+/9b99615806e358fdb396d1cb162ee2e69c2a20ec
Review URL: https://codereview.chromium.org/1433423002 .
|
|
CPDF_DIBSource::DownSampleScanline32Bit"
This reverts commit 9b99615806e358fdb396d1cb162ee2e69c2a20ec.
Broke Windows build.
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1437963003 .
|
|
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
R=tsepez@chromium.org, thestig@chromium.org
Review URL: https://codereview.chromium.org/1433423002 .
|
|
See bug for details.
BUG=pdfium:273
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1432073003 .
|
|
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1436573003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1427633010 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1408063016 .
|
|
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 .
|
|
- In non-standalone builds, use the provided jpeg library.
- Run gn format over all the GN files.
- Also roll DEPS for buildtools to c2f2598.
BUG=541704
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1425153006 .
|
|
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 .
|
|
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 .
|
|
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 .
|
|
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
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1426713002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1420873003 .
|
|
This Cl adds ToStream, CPDF_Object::AsStream and CPDF_Object::IsStream and
updates the src to use them as needed.
BUG=pdfium:201
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1402413004 .
|
|
This Cl adds ToArray, CPDF_Object::AsArray and CPDF_Object::IsArray and
updates the src to use them as needed.
BUG=pdfium:201
R=thestig@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1417893003 .
|
|
This Cl adds ToName, CPDF_Object::AsName and CPDF_Object::IsName and
updates the src to use them as needed.
BUG=pdfium:201
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1417823005 .
|
|
This reverts commit 937840e1722d1f2b77d80575d6e710d760662c9c.
Add type cast definitions for CPDF_Dictionary.
This CL adds ToCPDFDictionary type definitions and updates one file to use
instead of straight casts. I had to fix two places where we'd casted off the
constness of the original pointer.
BUG=pdfium:201
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1420583003 .
|
|
This reverts commit 4816432671eef6467354aa252f22bb80acc315b7.
Reason, broke the javascript_test Rendering PDF file
/mnt/data/b/build/slave/linux/build/pdfium/out/Debug/gen/pdfium/testing/javascript/document_methods.pdf.
Non-linearized path...
FAILURE: document_methods.in; Command
'['/mnt/data/b/build/slave/linux/build/pdfium/out/Debug/pdfium_test',
'/mnt/data/b/build/slave/linux/build/pdfium/out/Debug/gen/pdfium/testing/javascript/document_methods.pdf']'
returned non-zero exit status -11
BUG=pdfium:201
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1412413002 .
|
|
This CL adds ToCPDFDictionary type definitions and updates one file to use
instead of straight casts. I had to fix two places where we'd casted off the
constness of the original pointer.
BUG=pdfium:201
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1399233003 .
|
|
Get rid of cond ? TRUE : FALSE.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1405723003 .
|
|
Also remove some gotos and move code into an anonymous namespace.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1356373003 .
|
|
- Makes the cache be per-document
- Keys the cache on ObjNum and stream offset instead of keying on a pointer to the data (which can result in false cache hits).
- Makes it so the cache is only used for the globals stream.
- Reenable the cache.
R=thestig@chromium.org
BUG=pdfium:207
Review URL: https://codereview.chromium.org/1380243004 .
|
|
- Use std::vector<uint8_t> instead of raw uint8_t*
- Make ICodec_ScanlineDecoder::GetScanline() return const uint8_t*
- Add FxFreeDeleter, use it in CCodec_ImageDataCache.
- Make CCodec_ImageDataCache encapsulate its data members.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1361053002 .
|
|
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 .
|
|
They were lost in commit d53e6fd.
BUG=pdfium:168
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1196523002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1310603006 .
|
|
- Break up CPDF_DIBSource::DownSampleScanline() into smaller functions.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1287843004 .
|
|
Fixes the remaining issues, except for JBIG2/Skia ...
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1298393003 .
|
|
- Make methods const.
- Make variables non-public.
- Remove LoadFile() method.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1293973002 .
|
|
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1297723002 .
|