summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2016-03-14Add bitmaps and skp output to Skia portCary Clark
This is a first-cut at supporting bitmaps. Also added a --skp option to pdfium_test to generate a Skia picture file. The picture file can be loaded in Skia's SampleApp, debugger, or skiaserver to examine the generated picture. (This also includes fixes suggested in the prior Skia CL. My apologies for fat-fingers abandoning that one.) R=dsinclair@chromium.org, tsepez@chromium.org, dsinclair Review URL: https://codereview.chromium.org/1776313002 .
2016-03-14Move fx_crypto.h and fpdf_text.h out of core/include.Dan Sinclair
This CL moves the two files and breaks fpdf_text.h apart into individual pieces. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1801973002 .
2016-03-14Add missing DEPS files; enable checkdeps.Dan Sinclair
This CL adds the needed DEPS files to make checkdeps pass correctly. The checkdeps PRESUBMIT method has been copied from Chromium and is enabled on CL upload. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1801923002 .
2016-03-14Move fpdfsdk/src up to fpdfsdk/.Dan Sinclair
This CL moves the files in fpdfsdk/src/ up one level to fpdfsdk/ and fixes up the include paths, include guards and build files. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1799773002 .
2016-03-14Fix offset outside bounds warning on GCCTom Sepez
Alterntive to part of https://codereview.chromium.org/1785943002/ BUG=589724 R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1802553004 .
2016-03-14Move core/src/ up to core/.Dan Sinclair
This CL moves the core/src/ files up to core/ and fixes up the include guards, includes and build files. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1800523005 .
2016-03-11Re-enable MSVC warning 4800 for compiling with chromium_codeWei Li
Mainly change the code to avoid the warnings; in a few cases we have to use explicit casts. BUG=pdfium:29 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1783023002 .
2016-03-10Split fpdf_parser_objects.cpp into per-class .cpp/.h files.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1776913007 .
2016-03-10Change colorspace's number of components to be unsignedWei Li
Also remove unnecessary casts. BUG=pdfium:29 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1783933002 .
2016-03-10Split apart the remainder of fpdf_render_render.cpp into per-class files.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1778173002 .
2016-03-09Split off IPDF_CryptoHandler into its own .cpp/.h files.Tom Sepez
CPDF_CryptoHandler was always a pure-virtual class, now it is named as IPDF_ to indicate this. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1782673002 .
2016-03-09Move ScopedSetInsertion to third_party/base/stl_util.hTom Sepez
Also move ScopedFileStream, since it isn't specific to the parser, and belongs with the fxcrt object it manipulates. R=ochang@chromium.org Review URL: https://codereview.chromium.org/1780063003 .
2016-03-09Move CPDF_NumberTree to fpdfdoc.Tom Sepez
It's not used anywhere in fpdfapi, and can become restricted to fpdfoc/. R=ochang@chromium.org Review URL: https://codereview.chromium.org/1776713004 .
2016-03-09Convert NULLs to nullptrs in fx_xml_parser.cppOliver Chang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1780703002 .
2016-03-09Fix build broken at ca78d9a52893Tom Sepez
Move time.h inclusion to new file. TBR=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1778893003 .
2016-03-09Split off IPDF_SecurityHandler and CPDF_StandardSecurityHandler.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1781593003 .
2016-03-09Fix build broken at 8388037a5c58Tom Sepez
Missing explicit include of <vector> TBR=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1783433004 .
2016-03-09Split off CPDF_Parser and CPDF_SimpleParser into .h/.cpp filesTom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1773103003 .
2016-03-09Review and cleanup lint warnings.Dan Sinclair
This CL goes through the remaining list of list warnings and records why they are currently blacklisted, or fixes and enables them. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1773733002 .
2016-03-08Split off CPDF_Document into its own .cpp/.h files.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1780503002 .
2016-03-08Re-land "Split CPDF_SyntaxParser into its own named .cpp/.h files."Tom Sepez
This reverts commit 06fae28d307fe051f0c7e890344cd487c2260910. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1775023003 .
2016-03-08Missing return, broken win build.Dan Sinclair
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1775913003 .
2016-03-08Revert "Split CPDF_SyntaxParser into its own named .cpp/.h files."Tom Sepez
This reverts commit d50095fb151688e119a7097aabce11e4b3d36244. Reason for revert: build broken. TBR=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1774293002 .
2016-03-08Split CPDF_SyntaxParser into its own named .cpp/.h files.Tom Sepez
BUG= R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1774753002 .
2016-03-08Reland "Fix chromium-style errors."Dan Sinclair
This reverts commit 594912241cd7d409b5f58a48ccffdc1904d844b2. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1769273002 .
2016-03-08FX_FONTDESCRIPTOR must be POD.Tom Sepez
Since it is malloc'd, memset, and such, and clang-cl notices this. Also delete unused function found by clang-cl. BUG=pdfium:429 R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1777573003 .
2016-03-08Update cast to fix lint warning.Dan Sinclair
The current cast confused runtime/casting. Update to use static_cast and enable the lint warning. BUG=pdfium:426 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1770253003 .
2016-03-08Move fx_agg_driver files up one levelDan Sinclair
The agg driver files are split into src/ and include/ directories. This CL moves the source files up one level and removes the src/ and include/ directories. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1773593007 .
2016-03-07Completely de-virtualize CPDF_SyntaxParser.Tom Sepez
It isn't sub-classed. Making GetNextChar() non-virtual may save a virtual fn call per character if the compilers aren't able to do so themselves. Make members private, not protected. BUG= R=ochang@chromium.org Review URL: https://codereview.chromium.org/1772973002 .
2016-03-07Revert "Fix chromium-style errors."Dan Sinclair
This reverts commit c582c0ddfea8ba01c8449ed7841cdb33c12e0a98. TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1769263002 .
2016-03-07Fix chromium-style errors.Dan Sinclair
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1772543003 .
2016-03-07Fix a regression caused by 7cf13c9Wei Li
BUG=591137 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1769183002 .
2016-03-04Small change to enable skia-backed version of pdfium.Cary Clark
This only directs paths to use Skia. Text and bitmaps still use antigrain. Clipping is disabled -- still figuring out pdfium's model for saving and restoring clips. Deleting the Skia canvas is disabled -- there's some build problem where the pdfium and skia libraries are built with slightly different options that I haven't tracked down. This is also why for the moment SkDebugf is defined locally. With this patch and pdf_use_skia=1 a modestly complicated PDF draws (mostly) correctly with pdfium_test. R=dsinclair@chromium.org, tsepez@chromium.org, dsinclair BUG= Review URL: https://codereview.chromium.org/1761453002 .
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-03Fixup chromium-style warnings in fpdf_objects.hDan Sinclair
This CL fixes up chromium-style warnings in fpdf_object.h Specifically, the warnings fixed were: * Complex constructor has an inlined body. * Complex destructor has an inline body. * virtual methods with non-empty bodies shouldn't be declared inline. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1764793002 .
2016-03-03Remove other remaining use of std::list::size() from loop body.Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1761993002 .
2016-03-03Fix O(n^2) behaviour in parser.Tom Sepez
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 .
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-02Don't load GDI+ if GDI is disabled.chromium/2666Tom Sepez
This is to fix an issue when win32k lockdown is enabled on PDF content which can cause application crashes. If GDI is disabled then there's little benefit to loading the GDI+ library. BUG=583038 Patch by forshaw@ R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1748163006 .
2016-03-02Check that the names buffer is not empty before passing to GetNameFromTT.Tom Sepez
Due to implicit conversion if the names buffer is empty then nullptr will be passed to GetNameFromTT which blindly dereferences it leading to a NPD if an invalid font file is read. BUG=583037 Patch by forshaw@ R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1763493003 .
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-01Remove implicit conversions and some cleanupWei Li
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1751753002 .
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-03-01This Cl adds some whitespace and other formatting while removing some braces ↵Dan Sinclair
and making bits of the code simpler. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1742273002 .
2016-03-01Remove _FX_WINAPI_PARTITION_DESKTOP_Dan Sinclair
This does not appear to ever be defined, remove. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1753723002 .
2016-02-29Add CFX_FloatRect::ToFxRect().Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1752543002 .
2016-02-29Remove fx_fpf.h and IWYUDan Sinclair
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1748803002 .
2016-02-29Pass rect by const reference in SetClip_Rect().Tom Sepez
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1745243002 .
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 .