Age | Commit message (Collapse) | Author |
|
It implements IFGAS_Font and is unrelated to CFX Fonts,
except as a wrapper.
Review-Url: https://codereview.chromium.org/2037753005
|
|
Avoid confusion with CFX_FontMgr, which does not inherit
from IFX_FontMgr, and lives in a different layer of code.
Do the same CFX_ -> CFGAS_ transformation for the concrete
classes that implement IFGAS_FontMgr.
Review-Url: https://codereview.chromium.org/2039463003
|
|
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
|
|
Avoid confusion with CFX_Font, which is defined in fxcrt,
and does not inherit from nor bear any resemblence to IFX_Font.
Review-Url: https://codereview.chromium.org/2036173003
|
|
Review-Url: https://codereview.chromium.org/2038913002
|
|
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
|
|
Cherry-picked from upstream commit 6da55e0b51124b795b707d318c0e03252222ba06
BUG=chromium:616253
Review-Url: https://codereview.chromium.org/2034123003
|
|
This Cl removes the global FXJSE_Value_ToObject method and adds individual
methods on CXFA_Value to do the needed conversions.
Review-Url: https://codereview.chromium.org/2026993003
|
|
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
|
|
Make CFWL_ classes inherit from IFWL_ListItem.
Replace reinterpret_casts with static_casts.
Review-Url: https://codereview.chromium.org/2029923002
|
|
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
|
|
Shorter and easier to remember.
Review-Url: https://codereview.chromium.org/2029043002
|
|
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
|
|
Cleanup ::Min, ::Mod, ::Round, ::Date2Num, ::DateFmt and ::ISoTime2Num.
Review-Url: https://codereview.chromium.org/2028063002
|
|
These strings are not used anywhere, remove the defines and the strings. For the remaining strings, cleanup the contents.
Review-Url: https://codereview.chromium.org/2020353004
|
|
Remove the 'Impl entirely, and put the details into the class itself.
Review-Url: https://codereview.chromium.org/2036513002
|
|
Also, don't invent an enum that has one possible value that is
always set.
Review-Url: https://codereview.chromium.org/2028343002
|
|
Mainly clean up Script_NodeClass_Xxx() functions. There are no behavior
or API changes. The clean up mainly includes moving static functions into
namespace, remove unnecessary conditions or braces, changing
NULL->nullptr and local FX_BOOL->bool.
Review-Url: https://codereview.chromium.org/2018733002
|
|
Fix the asymmetry between creating only some isolates and
releasing all of them, even the shared ones, by being more
careful not to trash those we didn't create.
Review-Url: https://codereview.chromium.org/2025193002
|
|
Some shading types do not use these fields.
Review-Url: https://codereview.chromium.org/2027053002
|
|
BUG=616248
Review-Url: https://codereview.chromium.org/2020183004
|
|
The entire code base is single-threaded, hence the lockers
ought not be required.
Review-Url: https://codereview.chromium.org/2026933002
|
|
Looks like this causes compile warnings on ARM where wchar_t is unsigned.
Review-Url: https://codereview.chromium.org/2023173002
|
|
This CL updates the GN files so the Skia port will build on Windows. This does
not mean the functionaly is correct, just that the binaries link.
Review-Url: https://codereview.chromium.org/2032553002
|
|
This CL removes XFA_HFM2JSCONTEXT and the supporting code. XFA_HFM2JSCONTEXT
was replaced by CXFA_FM2JSContext. The translate method was moved to
CXFA_FM2JSContext.
Review-Url: https://codereview.chromium.org/2024833003
|
|
BUG=616246
Review-Url: https://codereview.chromium.org/2022263003
|
|
Reformat along the way, and mark unimplemented methods as delete.
Review-Url: https://codereview.chromium.org/2024283002
|
|
This will avoid a re-occurrence of BUG 613607 should someone
again optimize away CXFA_Object's virtual dtor.
Review-Url: https://codereview.chromium.org/2019333006
|
|
Need the tools/memory directory in order for asan to find the blacklist during
compilation.
Review-Url: https://codereview.chromium.org/2028603003
|
|
BUG=none
Review-Url: https://codereview.chromium.org/2022793002
|
|
Cleanup ::Max, ::Floor, ::Count, ::Ceil, ::Avg and ::Abs. Remove unneeded
strings from reservesForDecode (saves 4k when building pdfium_test).
Review-Url: https://codereview.chromium.org/2024133002
|
|
R=thestig@chromium.org
BUG=
Review-Url: https://codereview.chromium.org/2019383002
|
|
Review-Url: https://codereview.chromium.org/2025723002
|
|
In most cases, the destroy calls were removed and the object wrapped in a
unique_ptr.
Review-Url: https://codereview.chromium.org/2014323003
|
|
Review-Url: https://codereview.chromium.org/2024713002
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/2017293002 .
|
|
For GN build:
Enable chromium_code compilation config for XFA code;
Remove sign-compare suppression;
Limit the strict-overflow warning suppression only to xfa target;
For GYP build:
Remove warning suppression 4800 from GYP non third-party code;
After this, all the warning flags and levels for GN and GYP
builds should match.
BUG=pdfium:29, pdfium:475
Review-Url: https://codereview.chromium.org/2011303003
|
|
This is just a crock to get things working until we fix the
underlying issue.
When there's single-inheritance, it may often work in practice
to C-style (reinterpret) cast a Derived* ptr to void* and then
back to a Base* ptr. One place where this blows up is if
Derived has virtual functions but Base does not, in which case
the world will be offset by the size of a vtable ptr.
Because of the use of void* types in FXJSE, the above was happening
when setting a CXFA_ThisProxy (Derived, virtual) to be a global
object (void*). This would then be cast back to a CFXA_Object
(Base, non-virtual) and chaos is ensured.
Not sure how far back this goes.
Along the way, pick up some tidying which was necessary for
simplicity while tracking this down.
BUG=613607
Review-Url: https://codereview.chromium.org/2015143005
|
|
FX_WCHAR* casts were hiding a number of misuses of narrow strings in
pdfium, which /analyze identified. Now that those are fixed I did a
search for other instances of (FX_WCHAR*) to see if any other bugs
were lurking. No bugs were found but one unnecessary cast and one
that should be a const_cast were identified. This change fixes
those. No behavioral change.
Review-Url: https://codereview.chromium.org/2024463002
|
|
Review-Url: https://codereview.chromium.org/2004313007
|
|
The first one is about bitwise AND on zero, the result would always
be zero. The second one is about using wrong bitmasks, the result would cause branches never get executed.
BUG=chromium:613623, chromium:427616
Review-Url: https://codereview.chromium.org/2016243003
|
|
The warning was only shown and asked not to be treated as an error.
However, some recent flag change of chromeos toolchain has some
interference with the warning. To avoid future problem, disable the
warning for GCC.
BUG=chromium:615424
Review-Url: https://codereview.chromium.org/2013163003
|
|
This is the last use of CFX_PrivateData, which is now removed.
Review-Url: https://codereview.chromium.org/2016743002
|
|
BUG=chromium:614962
Review-Url: https://codereview.chromium.org/2017803002
|
|
TBR=weili@chromium.org
Review-Url: https://codereview.chromium.org/2017863002
|
|
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
|
|
This avoids another use of CFX_PrivateData. Note that in the old
code, we'd be calling through a m_pImpl onto the same underlying
object as we passed as the "key" argument when setting the value,
which explains why the get calls, happening one object lower, pass
the same argument as which they are being inovked against.
Review-Url: https://codereview.chromium.org/2010923002
|
|
Review-Url: https://codereview.chromium.org/2011563006
|