Age | Commit message (Collapse) | Author |
|
The progressive decoder will attempt to verify that the provided image type
matches the actual image content. We need to disable this check when running
the fuzzer in order to target the fuzzing to specific decoders otherwise
each fuzzer will end up fuzzing all of the decoders.
BUG=chromium:587126
Review-Url: https://codereview.chromium.org/2061733002
|
|
- Do the bounds check before applying the transformation.
- Simplify the bounds check.
- Fix nits.
- Remove some nearby dead code.
BUG=108144
Review-Url: https://codereview.chromium.org/2057423002
|
|
Use SkCanvas::drawPosText() to render the whole string
rather than drawing glyphs one at a time.
R=dsinclair@chromium.org
Review-Url: https://codereview.chromium.org/2057343002
|
|
This pulls in the android NDK and catapult, rolls chromium/src/build/,
and pulls in two .gni updates. It also fixes a few miscellaneous compile
failures in android-specific code.
BUG=pdfium:38
Review-Url: https://codereview.chromium.org/2059553002
|
|
Fix regressions from commit 4997b22.
BUG=618164
Review-Url: https://codereview.chromium.org/2053573003
|
|
Review-Url: https://codereview.chromium.org/2053513002
|
|
Make the return types/arguments match reality.
Review-Url: https://codereview.chromium.org/2053483002
|
|
Review-Url: https://codereview.chromium.org/2049003003
|
|
If we have been told we have a hint table, but fail to read the table, set
the document status to error instead of just returning.
BUG=pdfium:512
Review-Url: https://codereview.chromium.org/2040373003
|
|
Update Skia to the last revision that passed the Chrome DEPS roll.
This will help green the Skia tree so that future changes to Skia
that break PDFium can be detected.
R=rmistry@google.com,dsinclair@chromium.org
Review-Url: https://codereview.chromium.org/2042403004
|
|
Explicitly invoke GetObject() method instead. This avoids
having code where it looks like non-pointers are assigned to
pointers but works due to the cast operator.
Review-Url: https://codereview.chromium.org/2045083003
|
|
Introduce a logically const initialization (via mutable
members) so that this can happen lazily under const methods.
Review-Url: https://codereview.chromium.org/2045033002
|
|
Also sort the static table to be compatible with bsearch().
Review-Url: https://codereview.chromium.org/2047813002
|
|
Review-Url: https://codereview.chromium.org/2031653003
|
|
The code has local variables that shadow struct or class member
variables. Also, when this happens, different variable names should be
used instead of namespaces.
These were discovered by /Wshadow warning flag in Clang.
Review-Url: https://codereview.chromium.org/2034253003
|
|
Review-Url: https://codereview.chromium.org/2032613003
|
|
It's possible for the hint table to not exist event though we have a hint key
in the object database. If the table does not exist then return false from
CheckHIntTables().
BUG=pdfium:512
Review-Url: https://codereview.chromium.org/2047723002
|
|
In CJBig2_SDDProc::decode_Arith we will set a SDNEWSYMS value to nullptr if the
height or width are 0. With the PDF from the bug, all of the decoders are set
to nullptr. Then, we call into CJBig2_TRDProc::decode_Arith and pull out
one of the nullptr decoders and attempt to use it, crashing.
This CL adds a check that we have a non-null decoder before attempting to use
the decoder.
BUG=pdfium:511
Review-Url: https://codereview.chromium.org/2048683002
|
|
Review-Url: https://codereview.chromium.org/2044453003
|
|
CFX_PSRenderer, IFX_PSOutput, CPSOutput, CPSPrinterDriver.
Also reland commit 2d63eaa.
Review-Url: https://codereview.chromium.org/2019603002
|
|
git grep FPF_HFONT
git grep '\bGetHandle\b'
show these are unused.
Review-Url: https://codereview.chromium.org/2032793003
|
|
Three more bugs are discovered:
-- potientially used freed pointer;
-- potientially used uninitialized variable;
-- Used '&&' instead of bitwise operator '&'
BUG=chromium:613623, chromium:427616
Review-Url: https://codereview.chromium.org/2040503002
|
|
The code may not cause error conditions, but can be improved. These
warnings include uninitialized variables, signed/unsigned mismatch,
redundant condition, and using bool in arithmetic operations.
Also remove a chunk of unused code.
BUG=chromium:613623, chromium:427616
Review-Url: https://codereview.chromium.org/2036203004
|
|
When there are duplicate variable declarations, the inner names shadow the
outter ones. This is error prone and harder to read. Remove all the
instances found by /analyze.
BUG=chromium:613623, chromium:427616
Review-Url: https://codereview.chromium.org/2027273002
|
|
The code is not used anywhere, and it may contain bugs.
Review-Url: https://codereview.chromium.org/2036573002
|
|
This code has several disadvantages over a more modern graphics engine:
- no SIMD support
- no GPU support
- limited quality
Further, calling this code locks in the perceived resolution, so that
the output cannot be scaled without additional loss.
By directing all bitmap drawing through
CFX_SkiaDeviceDriver::StartDIBits, Skia can handle all appropriate
bitmap optimizations.
To that end, SetDIBits and StretchDIBits now call StartDIBits.
Other changes:
Skia's bitmaps are premultiplied. PDF contains bitmaps that are
unpremultiplied. PDFium appears to use premultiplied bitmaps sometimes,
and unpremultiplied bitmaps elsewhere. Add a debug check for
unpremultiplied bits in Skia's driver, and add a utility to premultiply
PDFium's bitmaps' bits.
PDFium supports a 24 bit RGB bitmap padded to a 32 bit word. Set the
high byte so that Skia can treat this as an ARGB bitmap.
Defer the application of the alpha value to the draw call rather than
calling MultiplyAlpha where possible.
Allow the destination bitmap to be alpha 8 or argb 32.
Review-Url: https://codereview.chromium.org/2025043002
|
|
So everyone can avoid doing Byte to WideString conversions.
Also remove CFX_GEFont::GetPsName() and deduplicate a couple of
GetPsName() calls.
Review-Url: https://codereview.chromium.org/2019173002
|
|
Some shading types do not use these fields.
Review-Url: https://codereview.chromium.org/2027053002
|
|
BUG=616248
Review-Url: https://codereview.chromium.org/2020183004
|
|
BUG=616246
Review-Url: https://codereview.chromium.org/2022263003
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/2017293002 .
|
|
Review-Url: https://codereview.chromium.org/2004313007
|
|
This is the last use of CFX_PrivateData, which is now removed.
Review-Url: https://codereview.chromium.org/2016743002
|
|
Remove unused dithering code.
Review-Url: https://codereview.chromium.org/2010813003
|
|
When the condition is "status == FXCODEC_STATUS_DECODE_TOBECONTINUE"
while |status| never gets updated in the loop, it would enter infinite
loop.
Also, since Start_decode_MMR() never returns
FXCODEC_STATUS_DECODE_TOBECONTINUE, there is no point to check on the
return value for that.
Review-Url: https://codereview.chromium.org/2013263002
|
|
Review-Url: https://codereview.chromium.org/2011563006
|
|
Fix some nits in CPDF_Parser::LoadCrossRefV5() and other callers.
Review-Url: https://codereview.chromium.org/2019443002
|
|
Fix 2/4/8 bits per pixel bitmaps
that PDFium transposes into 8 bpp
indexed.
R=tsepez@chromium.org,dsinclair@chromium.org,reed@google.com
Review-Url: https://codereview.chromium.org/2011153002
|
|
- Remove dead code
- Remove default arguments
- Move code into anonymous namespace
Review-Url: https://codereview.chromium.org/2013023002
|
|
Review-Url: https://codereview.chromium.org/2011943004
|
|
Review-Url: https://codereview.chromium.org/2009803003
|
|
Review-Url: https://codereview.chromium.org/2009253003
|
|
Review-Url: https://codereview.chromium.org/2017503002
|
|
Remove an unused inheritance.
The remaining usages are a little more intricate.
Review-Url: https://codereview.chromium.org/2015743002
|
|
It wasn't being used.
Also rename a static member from m_ to s_, just because.
Review-Url: https://codereview.chromium.org/2009393002
|
|
Replace it with two generic slots for Links and Codec usage.
Since the codec is at a lower layer than the document, we
don't provide separate get/set methods, since having a
document upon which to call these would be a layering
violation. Do the same for the Links for simplicity.
Review-Url: https://codereview.chromium.org/2005193003
|
|
CFX_PrivateData served two purposes here:
The first was to hold an opaque pointer to the corresponding
page structure in the next higher layer, of which it knows
no details. Introduce an empty CPDF_Page::View class to
represent this higher class, so as to get type safety while
preserving layering.
The second was to hold an opaque render context, which it
also happened to own. Make this a CFX_Deletable to help
with management.
Also remove an unused inheritance from CFX_PrivateData
in CPDF_Annot.
Review-Url: https://codereview.chromium.org/2008553008
|
|
Resolve changes to cpdf_shadingpattern.h that prevent
Skia from building.
R=thestig@chromium.org,dsinclair@chromium.org,reed@google.com
BUG=
Review-Url: https://codereview.chromium.org/2017463002
|
|
Match the matrix supplied by PDFium to the one expected
by Skia to draw bitmaps.
Set up the color if the bitmap is an image mask.
Additional work required to figure out when bitmap
filtering should be applied.
R=reed@google.com,dsinclair@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2004203003
|
|
Its only used to store one object, so replace it with a unique_ptr
to a class with a virtual dtor. Rename the prototypical class with
virtual dtor from CFX_DestructObject to CFX_Deletable. Rename the
fx_basic_module.cpp to cfx_modulemgr.cpp to match the one class
in it.
Review-Url: https://codereview.chromium.org/2013483003
|