summaryrefslogtreecommitdiff
path: root/core/include/fxcrt
AgeCommit message (Collapse)Author
2016-03-03Combine StrToInt methods.Dan Sinclair
This Cl combines the two StrToInt implementations. In doing so I had to add some more overrides to toDecimalDigit() and add a isDecimalDigit(). BUG=pdfium:423 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1757283002 .
2016-03-03Fix parsing of object numbers > 16,777,216.Dan Sinclair
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 .
2016-03-02Remove unused CFX_GrowOnlyPool.dan sinclair
The CFX_GrowOnlyPool class is never used, removed. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1757043002 .
2016-03-01Fix and enable lint checks.Dan Sinclair
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 .
2016-03-01Replace FX_LPCRECT typedef with underlying typesTom Sepez
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 .
2016-02-29Add CFX_FloatRect::ToFxRect().Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1752543002 .
2016-02-29Speculative fix for windows broken at d5e7b355b8c4.Tom Sepez
I'm guessing that |small| is #defined somewhere. TBR=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1746243002 .
2016-02-29Fixup FX_RECT and FX_SMALL_RECT classes.Tom Sepez
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 .
2016-02-29Remove fgas_base.h and IWYUDan Sinclair
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1749703002 .
2016-02-26Remove some FX_BOOLsTom Sepez
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 .
2016-02-26Re-land "Replace CPDF_Rect and CPDF_Point with CFX types."Tom Sepez
TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1737593006 .
2016-02-26Revert "Replace CPDF_Rect and CPDF_Point with CFX types."Tom Sepez
This reverts commit 3b8fdd34bdf57ec45291b77008a43249f838efcb. TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1743753002 .
2016-02-26Replace CPDF_Rect and CPDF_Point with CFX types.Tom Sepez
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 .
2016-02-25Make CFX_PSVTemplate simpler.Tom Sepez
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 .
2016-02-24Use stdint types for FX_WORD and FX_DWORD.Dan Sinclair
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 .
2016-02-23Remove FXSYS_MulDiv(a, b, c).Dan Sinclair
This is a wrapper which does (a) * (b) / (c). Inline the operations. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1726893002 .
2016-02-23Remove FXSYS_Div.Dan Sinclair
This is just a wrapper for (a) / (b). Inline the divide. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1727793002 .
2016-02-23Remove FXSYS_Mul.Dan Sinclair
This define just multiples the two parameters together. Inline the *'s. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1729613003 .
2016-02-23Sort includes in xfa/.Dan Sinclair
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 .
2016-02-22Switch from _DEBUG to NDEBUG.Lei Zhang
- 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 .
2016-02-22Remove unused stuff from fx_sys.hTom Sepez
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 .
2016-02-19Tidy CFX_FixedBufGrow.Tom Sepez
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 .
2016-02-19Remove IFX_BufferArchive.Tom Sepez
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 .
2016-02-19Revert "Revert "Use safe arithmentic in CFX_BinaryBuf::ExpandBuf.""Tom Sepez
This relands the CL at https://codereview.chromium.org/1710403002 Tests passed locally. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1717603003 .
2016-02-19Revert "Use safe arithmentic in CFX_BinaryBuf::ExpandBuf."Tom Sepez
This reverts commit 78353d5dbc0b0c9b2d6946005439a51efa7d108c. Reason for revert Failed tests. TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1719493002 .
2016-02-19Get rid of CFX_CharMap instantiations.Lei Zhang
The only thing left are a couple of static methods. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1711273002 .
2016-02-19Use safe arithmentic in CFX_BinaryBuf::ExpandBuf.Tom Sepez
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 .
2016-02-19Remove CFX_{Byte,Wide}String::ConvertFrom().Lei Zhang
Use/add CFX_{Byte,Wide}String::FromFoo() instead. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1711893003 .
2016-02-18Sort headers in non-xfa directories.Dan Sinclair
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 .
2016-02-17Banish CFX_ObjectArray to the XFA side.Tom Sepez
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 .
2016-02-17Expand all paths to be based off pdfium/ directoryDan Sinclair
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 .
2016-02-17Banish CFX_ByteArray and CFX_WideArray to the XFA side.Tom Sepez
Fix IWYU and include paths as we go. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1701883004 .
2016-02-12One less PI.Tom Sepez
One less Bezier. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1692413002 .
2016-02-12Remove the FX_MIN macro.Tom Sepez
Bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min, bin the min. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1693913003 .
2016-02-12Make fx_bidi sane.Tom Sepez
Replace array of heterogenous ints with array of struct. Create a class for traversing a string. Flip array when R2L and process with forward iterator always. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1682983002 .
2016-02-10Banish CFX_PtryArray to XFA side only.Tom Sepez
The m_Operators array represents a heterogeneous instruction stream, so leave it as a void* for now. R=thestig@chromium.org, thestig@chromimum.org Review URL: https://codereview.chromium.org/1676413002 .
2016-02-09Banish CFX_WordArray to XFA-land.Tom Sepez
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1676913004 .
2016-02-05Remove CFX_FileSizeArray.Tom Sepez
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1671113002 .
2016-02-04Remove CFX_PtrArray from fx_xml.hTom Sepez
Removes another case of a void* array where the even elements mean one thing and the odd elements mean another. And even the odd elements aren't consistently typed -- leave for later. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1671473002 .
2016-02-02Merge to XFA: Kill CFX_ByteArray in master.Tom Sepez
One trivial edit in fx_basic.h Includes both fixes for build breakage. Review URL: https://codereview.chromium.org/1653253002 . (cherry picked from commit 9b0a59d659d8083802385649ba74370d65c41e36) TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1655423002 .
2016-01-25Merge to XFA: Remove CFX_SegmentedArray use from master.Tom Sepez
Unfortunately, it is still used on the xfa/ side, so exclude it only for non-xfa builds. Original Review URL: https://codereview.chromium.org/1618273004 . (cherry picked from commit c64e4007ee4561ec2ed3ce986191caf9b024ef55) TBR=ochang@chromium.org TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1631863003 .
2016-01-25Remove several more unused parser values.Tom Sepez
unused progressive enum unused members m_bFileStream, m_dwWordPos Remove PDFWORD_* types R=thestig@chromium.org Review URL: https://codereview.chromium.org/1634683003 .
2016-01-20Merge to XFA: Replace more CFX_MapPtrToPtr.Tom Sepez
Original Review URL: https://codereview.chromium.org/1580573002 . (cherry picked from commit a505d9d3e13485e090e50d5d83f882fb707d3f48) R=ochang@chromium.org Review URL: https://codereview.chromium.org/1610163003 .
2016-01-20Merge to XFA: Remove CFX_CMapByteStringToPtrTom Sepez
Original Review URL: https://codereview.chromium.org/1580493002 . (cherry picked from commit 2a312f90dbf5da8b930dee814db786965792961a) TBR=ochang@chromium.org Review URL: https://codereview.chromium.org/1611683002 .
2016-01-20Merge to XFA: Bugs in CJS_PublicMethods::ParseNumber().Tom Sepez
Original Review URL: https://codereview.chromium.org/1586203006 . (cherry picked from commit f13d510cf267c27f4c123494de67670ec201cedc) BUG=pdfium:361 R=ochang@chromium.org TBR=ochang@chromium.org Review URL: https://codereview.chromium.org/1603173004 .
2016-01-11Merge to XFA: Switch most min/max macros to std::min/max.Lei Zhang
Fix lint errors along the way. R=tsepez@chromium.org TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1567343002 . (cherry picked from commit 9adfbb0920a258e916003b1ee9515e97879db82a) Review URL: https://codereview.chromium.org/1577503002 .
2016-01-08Merge to XFA: Remove a bunch of dead code.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1567333003 . (cherry picked from commit 4a24ad858484ecdf9b49481e63060e4d476cf1c7) Review URL: https://codereview.chromium.org/1569783007 .
2016-01-04Merge to XFA: Remove CPDF_Creator::m_ObjectSize, it's never read from.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1543413002 . (cherry picked from commit 03f5040cbe03cc93e133cb98ecce6725e2679170) Review URL: https://codereview.chromium.org/1555193002 .
2015-12-24Merge to XFA: Switch from nonstd::unique_ptr to std::unique_ptr.Lei Zhang
TBR=thakis@chromium.org Review URL: https://codereview.chromium.org/1547833002 . (cherry picked from commit d20dfba2ae10e8aeb328328f09da79ff904110a8) Review URL: https://codereview.chromium.org/1545183002 .
2015-12-17Merge to XFA: Correctly extracting email addressesWei Li
An email address contains user name part and host name part. User name allows dash or underscore, but not leading/ending/double period. Host name doesn't allow leading/ending/double period either. BUG=489107 TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1530763005 . (cherry picked from commit cc70b7b55c9edcd0ff038f59080699060fbbede1) Review URL: https://codereview.chromium.org/1532303002 .