Age | Commit message (Collapse) | Author |
|
Despite what the c++11 spec says, std::list::size() is
still O(n), not O(1).
R=dsinclair@chromium.org, ochang@chromium.org
Review URL: https://codereview.chromium.org/1763443003 .
|
|
Currently, there is a check that an object number is <= 0x1000000. If that
check fails, we end up putting the parser into a bad state and fail to load
documents. The object does not need to be in the XRef table, or referenced
from the document, just be in the document.
This Cl removes the size check and updates the various atoi calls to use a
uint32_t instead of an int32_t so we don't end up getting strange values when
converting from a string.
BUG=455199
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1755273002 .
|
|
The CFX_GrowOnlyPool class is never used, removed.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1757043002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1751753002 .
|
|
This CL fixes and enables:
* readability/namespace
* readability/multiline_string
* readability/multiline_comment
* readability/inheritance
* readability/function
* readability/braces
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1747123002 .
|
|
Helps with transparency. Also remove default args and
use override consistently in the affected methods.
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1751093002 .
|
|
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1752543002 .
|
|
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1745243002 .
|
|
I'm guessing that |small| is #defined somewhere.
TBR=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1746243002 .
|
|
Put these first, so later on more complicated classes can
have constructors that take these as arguments.
Add better constructors, and call appropriately. Also don't
be afraid to return these from methods since RVO.
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1745683002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1749703002 .
|
|
This CL removes duplicate forward declarations, removes extraneous declarations
and adds a couple of missing declarations.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1741003002 .
|
|
Grepping for FX_BOOL and |==| on the same line gives
a very strong clue that the expression won't be out
of range of the |bool| type iteself.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1736323003 .
|
|
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1737593006 .
|
|
This reverts commit 3b8fdd34bdf57ec45291b77008a43249f838efcb.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1743753002 .
|
|
Too many rectangle types. Remove CPDF_Rect #define, and
make an equivalent point type in CFX, but stop short of
consolidating the N different forms of rectangles in CFX.
Also banish PDF_ClipFloat to the one .cpp file that needs it,
since it was in the vicinity of the .h file changes.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1740923003 .
|
|
Get rid of types; use virutal functions instead of type based checking;
remove unused functions; change casts; simplify load()/UnicodeFromCharCode()/CharCodeFromUnicode() calling.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1729823004 .
|
|
Add default ctor so we don't have to zero these out.
Also, make CFX_VTemplate simpler.
Also, remove the Set() method in favor of assignment.
Also, remove CFX_FloatPoint define.
Also, remove unused (and wrong) CFX_VTemplate methods.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1733523003 .
|
|
This Cl changes the definition of FX_WORD and FX_DWORD to use the stdint
types. This will allow changing the uses on a directory basis to the
stdint types.
R=thestig@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1727203002 .
|
|
This CL enables several of the diabled whitelist/* lint checks.
R=thestig@chromium.org, tsepez@chromium.org
Review URL: https://codereview.chromium.org/1730553002 .
|
|
This is a wrapper which does (a) * (b) / (c). Inline the operations.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1726893002 .
|
|
This is just a wrapper for (a) / (b). Inline the divide.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1727793002 .
|
|
This define just multiples the two parameters together. Inline the *'s.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1729613003 .
|
|
They're technically not allowed because they are reserved
for the preprocessor.
Also get rid of LPC* typedefs along the way.
Also provide a header for a data file containing many
instance of these found along the way.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1722873002 .
|
|
This CL sorts all the includes in the xfa/ directory. There are a lot of IWYU
errors that have been fixed to make things compile again.
BUG=pdfium:65
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1722803002 .
|
|
Use virtual functions to replace type based logic; remove unused
functions; disable default copy constructor/assign operator.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1720003003 .
|
|
- NDEBUG is more widely used in Chromium
- _DEBUG is not defined on Mac in Chromium
- Leaving _DEBUG in for standalone debug builds for the benefit of
third party libraries / Windows.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1721073004 .
|
|
Move FX_DOUBLE to fx_system.h to keep it with the others
until we remove it.
Having one memset/cpy wrapper is dubious, two are worse.
R=dsinclair@chromium.org
Review URL: https://codereview.chromium.org/1724523002 .
|
|
Stop short of removing it since it looks like it may be used
in some very hot paths.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1719543002 .
|
|
Merge it into CFX_FileBufferArchive, since both are in the
same header file and it is the only subclass.
Also, bTakeOver is always false, and the buf size is always
32K.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1712353002 .
|
|
This relands the CL at https://codereview.chromium.org/1710403002
Tests passed locally.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1717603003 .
|
|
This reverts commit 78353d5dbc0b0c9b2d6946005439a51efa7d108c.
Reason for revert Failed tests.
TBR=thestig@chromium.org
Review URL: https://codereview.chromium.org/1719493002 .
|
|
The only thing left are a couple of static methods.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1711273002 .
|
|
Always call ExpandBuf(), and if it returns, we know the
subsequent calculations won't overflow.
Also use std::unique_ptr, and fix unintentional copies thus
detected by its suppressed copy ctor in fsdk_baseform.cpp
Also Remove unused CFX_BinaryBuf::TakeOver(), AppendFill(), CopyData().
Also remove operator= in favor of using <<, for similarity
with std::ostream and friends.
Also move ByteStringC methods to CFX_ByteTextBuf sub-class.
Also re-order members, may pack tighter on 64-bits.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1710403002 .
|
|
For CPDF_PageObject and its subclasses, remove m_Type and use GetType() instead. Also, add As<Type> functions to avoid casting all over the places.
BUG=pdfium:397
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1709393002 .
|
|
Use/add CFX_{Byte,Wide}String::FromFoo() instead.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1711893003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1715583002 .
|
|
Change implicit conversion to accessor function, remove unused function
and unused parameter, add a couple checks for null pointers, and some
cleanup.
BUG=pdfium:247
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1703183002 .
|
|
Not only unused, but ugly-looking.
Fix lint along the way.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1709313002 .
|
|
This CL updates include guards throughout the code base to be in the
chromium style.
BUG=pdfium:65
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1707893004 .
|
|
Currently the states are numbers, use names instead to make the code
clearer where things are transitioning too.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1715483002 .
|
|
This CL runs the chromium sort-headers.py script over the non-xfa code.
XFA will be done after the includes have been updated to full paths.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1711793002 .
|
|
Tidy whitespace, add missing consts in a few places. Remove
a few pointless typedefs.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1707953002 .
|
|
Exposes an iterator over the object list, but not the object
holder, since pages and forms inherit from object holder, and
we don't want to imply that there's only one thing that might
be iterated over for those classes.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1700183002 .
|
|
This CL runs a script over the source and updates the include files to be
a full path from the pdfium/ directory.
BUG=pdfium:65
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1707923002 .
|
|
Fix IWYU and include paths as we go.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1701883004 .
|
|
Eventually, we're going to expose an iterator over
CPDF_PageObjectList that we don't want to be inherited by
the CPDF_PageObjectHolder sub-classes: page and form.
Also, the operations that the object holder performs dealing
with inquiring about masks and such seem beyond the scope of
what a list would provide. Hence the "Holder" name.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1701073002 .
|
|
Remove unused member functions and simplify calls to find tag parameters.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1681403007 .
|
|
Migrating this off of CFX_PrtList depends on first making
this saner. The tricky part is checking whether new
objects have been added to a partially-parsed layer. The
old code used to do this by keeping track of the last
element in the list, and seeing if it changes. It's far
simpler to keep track of the last element processed, and
just keep looking for more objects after it with each pass.
Fold together some duplicated blocks along the way.
Remove unused EstimateProgress() method.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1699443002 .
|
|
When there is no dictionary for marked content, it potientially may cause crash. But it is not happening now since 1) we now check for the returned dict parameter 2) the alloc function in pdfium does zero initialization.
BUG=pdfium:67
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1695633004 .
|