Age | Commit message (Collapse) | Author |
|
BUG=pdfium:611
Review-Url: https://codereview.chromium.org/2377393002
|
|
BUG=pdfium:611
Review-Url: https://codereview.chromium.org/2382723003
|
|
BUG=pdfium:611
Review-Url: https://codereview.chromium.org/2381063002
|
|
After this CL: only one global CFX_FontCache used. Any cached items
from it, are released, when they are not being used.
This is restore part of reverted CL:
Original CL: https://codereview.chromium.org/2158023002
Revert reason: BUG=647612
Fix bug CL: https://codereview.chromium.org/2350193003
Review-Url: https://codereview.chromium.org/2350243002
|
|
https://codereview.chromium.org/2158023002/ )
Reason for revert:
Causes heap-use-after-free. See crbug.com/647612.
Original issue's description:
> Fix memory leaking on ClosePage.
> CFX_FontCache refactoring:
> after this CL: Only one global CFX_FontCache used. Any cached items from it, are released, when its are not used.
>
> BUG=79367,48791
>
> The fonts was not cleared after unloading pages.
>
> Test pdf:
>
> http://www.nasa.gov/pdf/750614main_NASA_FY_2014_Budget_Estimates-508.pdf
>
> For this file, we have ~5 fonts per page, which equal ~1 Mb per page.
> In this PDF we have 670 pages, as result after slow scrolling(reading) full document we have ~600 Mb fonts data in memory.
>
> memory usage of PDF Plugin:
> before this CL: ~660 Mb
> after this CL: ~100 Mb
>
> Committed: https://pdfium.googlesource.com/pdfium/+/cde5101eb15b24519e89fa500fe37038bc8e2201
TBR=tsepez@chromium.org,brucedawson@chromium.org,npm@chromium.org,art-snake@yandex-team.ru
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=79367,48791
Review-Url: https://codereview.chromium.org/2350763002
|
|
CFX_FontCache refactoring:
after this CL: Only one global CFX_FontCache used. Any cached items from it, are released, when its are not used.
BUG=79367,48791
The fonts was not cleared after unloading pages.
Test pdf:
http://www.nasa.gov/pdf/750614main_NASA_FY_2014_Budget_Estimates-508.pdf
For this file, we have ~5 fonts per page, which equal ~1 Mb per page.
In this PDF we have 670 pages, as result after slow scrolling(reading) full document we have ~600 Mb fonts data in memory.
memory usage of PDF Plugin:
before this CL: ~660 Mb
after this CL: ~100 Mb
Review-Url: https://codereview.chromium.org/2158023002
|
|
This CL updates all of the includes to be correctly sorted. A PRESUBMIT warning
is added (from chromium) that will warn if the includes are in the wrong order on upload.
Review-Url: https://codereview.chromium.org/2337293002
|
|
The blocks.Add will std::move the unique_ptrs, so the std::max calculations
need to go before. Without this change, pdfium_test will crash when trying
to render test/barcode_test.pdf with XFA enabled.
Tested that after this change, barcode_test.pdf is rendered without crashing.
Review-Url: https://codereview.chromium.org/2298833002
|
|
Review-Url: https://codereview.chromium.org/2260533002
|
|
files.
This is the third CL to separate fx_ge into classes, one per file.
All fx_ge.h includes had to be replaced with new includes
The method definitions for CFX_FxgeDevice were not moved to a single file.
These methods are defined in two folders different from fxge/ge, so they were left untouched for now.
Review-Url: https://codereview.chromium.org/2223213002
|
|
For classes under xfa/fxbarcode, use smart pointers instead
of raw pointer to make memory management easier.
Also fix some styling issues along the changes.
BUG=pdfium:518
Review-Url: https://codereview.chromium.org/2221023003
|
|
Review-Url: https://codereview.chromium.org/2226003003
|
|
This is the second CL in an attempt to split up the classes in fxge/include/fx_ge.h into their own files. CFX_ClipRgn is moved to core/fxge/ge because it is only used in core/fxge. The header for CFX_PathData is left in core/fxge/include since it is used elsewhere.
Review-Url: https://codereview.chromium.org/2216853004
|
|
This is the first CL in an attempt to split up the classes in fxge/include/fx_ge.h into their own files.
Review-Url: https://codereview.chromium.org/2217663002
|
|
This cl removes code that exists but is never called. This includes:
* cfwl_formtp
* cfwl_widgetdelegate
* cfwl_scrollbar
* cfwl_theme
* cfwl_tooltip
* PWL_Label
* PWL_ListCtrl
* PWL_Signature
* PWL_IconList
* BC_ResultPoint
* BC_CommonPerspectiveTransform
* BC_CommonBitSource
* BC_PDF417Codeword
* fx_codec_flate.h (the .cpp file still exists)
Review-Url: https://codereview.chromium.org/2071953002
|
|
We never read barcodes, we only write them. Remove code related to barcode
reading.
Review-Url: https://codereview.chromium.org/2071633002
|
|
This change mainly contains files in fpdfsdk/ directory.
This is part of the efforts to make PDFium code compilable
by Clang chromium style plugins.
The changes are mainly the following:
-- move inline constructor/destructor of complex class/struct out-of-line;
-- add constructor/destructor of complex class/struct if not
explicitly defined;
-- add explicit out-of-line copy constructor when needed;
-- move inline virtual functions out-of-line;
-- Properly mark virtual functions with 'override';
-- some minor cleanups plus removing an unused file and splitting
cxfa_eventparam out from fxfa.h
BUG=pdfium:469
Review-Url: https://codereview.chromium.org/2062313002
|
|
This change contains files in xfa/fxbarcode directory.
This is part of the efforts to make PDFium code compilable
by Clang chromium style plugins.
The changes are mainly the following:
-- move inline constructor/destructor of complex class/struct out-of-line;
-- add constructor/destructor of complex class/struct if not
explicitly defined;
-- add explicit out-of-line copy constructor when needed;
-- move inline virtual functions out-of-line;
-- Properly mark virtual functions with 'override';
-- some minor cleanups;
BUG=pdfium:469
Review-Url: https://codereview.chromium.org/2067903002
|
|
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
|
|
Review-Url: https://codereview.chromium.org/2063463002
|
|
Review-Url: https://codereview.chromium.org/2053043004
|
|
Review-Url: https://codereview.chromium.org/2052413002
|
|
Make CFDE_TxtEdtParag::m_lpData a int32_t*, not void*, since
it is cast to int32_t everywhere it is used.
Many fxbarcode casts are redundant, likely the result of
previous generic PtrArray replacement with templated type.
Review-Url: https://codereview.chromium.org/2059953002
|
|
Review-Url: https://codereview.chromium.org/2055103002
|
|
Review-Url: https://codereview.chromium.org/2048983002
|
|
Make the parent class own the reader/writer via unique_ptrs.
De-virtualize some methods with no overrides.
Review-Url: https://codereview.chromium.org/2037573005
|
|
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
|
|
BUG=none
Review-Url: https://codereview.chromium.org/2022793002
|
|
Remove unused dithering code.
Review-Url: https://codereview.chromium.org/2010813003
|
|
Review-Url: https://codereview.chromium.org/2009253003
|
|
This is part of efforts to bring XFA to chromium_code standard.
Most of them will have behavior change.
The details of these problems are:
xfa/fgas/layout/fgas_rtfbreak.cpp:
Wrong condition with misused variable
xfa/fgas/localization/fgas_locale.cpp
Unnecessary condition
xfa/fxbarcode/datamatrix/BC_DataMatrixDecodedBitStreamParser.cpp
xfa/fxfa/app/xfa_fffield.cpp
Unreachable code should be the correct code
xfa/fxbarcode/pdf417/BC_PDF417ScanningDecoder.cpp
xfa/fxbarcode/qrcode/BC_QRDetector.cpp
Wrong condition logic
BUG=pdfium:29
Review-Url: https://codereview.chromium.org/2000073003
|
|
Part of the fix to the issues in bug 613623. These are all real bugs
arising from non-use of L""-style literals band-aided over with
casts. Remove the casts, and fix the literals or replace with empty
string constructors.
BUG=613623, 427616
Review-Url: https://codereview.chromium.org/1999933002
|
|
This is part of efforts to bring XFA to chromium_code standard.
The warnings are from unreachable code, or using potentially
uninitialized variables, or using assignment within a condition.
This change list only contains easy to fix cases. More cleanups
will follow.
BUG=pdfium:29
Review-Url: https://codereview.chromium.org/1998873002
|
|
These are the left or newly added code which causes compilation
warnings of "signed and unsigned comparison". Need to fix them
before I re-enable the warning flag.
BUG=pdfium:29
Review-Url: https://codereview.chromium.org/1986533002
|
|
BUG=
Review-Url: https://codereview.chromium.org/1979723003
|
|
Most of the time, we want to operate on chars as if they
were unsigned, but there are a few places where we need
the default (questionably signed) values. Consolidate
the casting in a single place rather than forcing callers
to get a char* ptr.
BUG=pdfium:493
Review-Url: https://codereview.chromium.org/1972053003
|
|
Last part. Remove CFX_PtrArray typedef.
Review-Url: https://codereview.chromium.org/1941863002
|
|
Also fix typos and overrides.
Review-Url: https://codereview.chromium.org/1935793002
|
|
Review-Url: https://codereview.chromium.org/1936733002
|
|
Converted one place to unique_ptr to avoid redundant cleanup.
Review-Url: https://codereview.chromium.org/1937593002
|
|
This also removes another hand-written bubblesort in favor of
the std::sort() STL function.
Review-Url: https://codereview.chromium.org/1937513002
|
|
XFA edition.
Review-Url: https://codereview.chromium.org/1925363002
|
|
Remove unused m_pdf417byteSegments, which was coped into from
an empty array and never again referenced.
Review-Url: https://codereview.chromium.org/1927253002
|
|
Review-Url: https://codereview.chromium.org/1932703003
|
|
Its implicit copy constructor is unsafe, since it ends up
sharing the underlying data. Fix one place where it was
being unintentionally invoked.
Review URL: https://codereview.chromium.org/1908073003
|
|
There are perfectly fine operators for adding to an existing string
without first duplicating the arguments.
Review URL: https://codereview.chromium.org/1891953002
|
|
BUG=
Review URL: https://codereview.chromium.org/1882043004
|
|
BUG=
Review URL: https://codereview.chromium.org/1885973002
|
|
All of the ICodec_* interfaces had a single implementation. This CL removes
the interfaces and uses the concrete classes in their place.
BUG=pdfium:468
Review URL: https://codereview.chromium.org/1876023003
|
|
The naming is redundant given the base type, and will stand
in the way of consolidating Byte and Wide code.
BUG=
Review URL: https://codereview.chromium.org/1862123003
|