summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-06-08update skiacaryclark
Update Skia to the last revision that passed the Chrome DEPS roll. This will help green the Skia tree so that future changes to Skia that break PDFium can be detected. R=rmistry@google.com,dsinclair@chromium.org Review-Url: https://codereview.chromium.org/2042403004
2016-06-08Remove implicit CFX_CountedRef::operator T*()tsepez
Explicitly invoke GetObject() method instead. This avoids having code where it looks like non-pointers are assigned to pointers but works due to the cast operator. Review-Url: https://codereview.chromium.org/2045083003
2016-06-08Change time_t conversion operator to ToTime_t() functionweili
In class CPDFSDK_DateTime, use ToTime_t() function to make the conversion more clear. Also, clean up the code in this class by removing buggy/unused code, using static_cast instead of c cast etc. Review-Url: https://codereview.chromium.org/2043873006
2016-06-08Fix GetPageIndex() for dynamic XFA documents.thestig
BUG=614211 Review-Url: https://codereview.chromium.org/2045013004
2016-06-07Avoid const-cast in CPDF_Fonttsepez
Introduce a logically const initialization (via mutable members) so that this can happen lazily under const methods. Review-Url: https://codereview.chromium.org/2045033002
2016-06-07Remove various FXJSE Value methods.dsinclair
This CL removes the FXJSE_Value_Set*, FXJSE_Value_To*, FXJSE_Value_Get* and FXJSE_Value_Delete* methods. Review-Url: https://codereview.chromium.org/2043153002
2016-06-07Remove dead code in CFGAS_FontMgrImp.thestig
And also CFGAS_StdFontMgrImp. Review-Url: https://codereview.chromium.org/2033673002
2016-06-07Use static_casts for cpdf_type1font bsearch on mac.tsepez
Also sort the static table to be compatible with bsearch(). Review-Url: https://codereview.chromium.org/2047813002
2016-06-07Get rid of NULLs in fpdfsdk/thestig
Review-Url: https://codereview.chromium.org/2031653003
2016-06-07Replace IFGAS_Font with underlying concrete typethestig
Review-Url: https://codereview.chromium.org/2037563002
2016-06-07xfa_fm2jscontext method cleanup - pt VIchromium/2763dsinclair
Cleans up ::DecodeXML, ::DecodeHTML, ::DecodeURL, ::Decode, ::Concat, ::At, ::UnitValue, ::UnitType, ::Ref, ::Eval, ::If, ::Within. Review-Url: https://codereview.chromium.org/2043133002
2016-06-07Remove casts to same type in xfa_script_imp.cpptsepez
Review-Url: https://codereview.chromium.org/2046133002
2016-06-07Remove some casts to same type in cfx_graphics.cpptsepez
Review-Url: https://codereview.chromium.org/2048663004
2016-06-07Fix more code which has shadow variablesweili
The code has local variables that shadow struct or class member variables. Also, when this happens, different variable names should be used instead of namespaces. These were discovered by /Wshadow warning flag in Clang. Review-Url: https://codereview.chromium.org/2034253003
2016-06-07Get rid of NULLs in core/thestig
Review-Url: https://codereview.chromium.org/2032613003
2016-06-07Check the hint table exists before using.dsinclair
It's possible for the hint table to not exist event though we have a hint key in the object database. If the table does not exist then return false from CheckHIntTables(). BUG=pdfium:512 Review-Url: https://codereview.chromium.org/2047723002
2016-06-07Remove FDE_HVISUALOBJ.dsinclair
This CL removes the FDE_HVISUALOBJ in favour of the concrete FDE_TEXTEDITPIECE class. The parameter was removed from any method which didn't use it and the non-implemented methods were removed. Review-Url: https://codereview.chromium.org/2047693002
2016-06-07Verify we have a CJBig2_Image before attempting use.dsinclair
In CJBig2_SDDProc::decode_Arith we will set a SDNEWSYMS value to nullptr if the height or width are 0. With the PDF from the bug, all of the decoders are set to nullptr. Then, we call into CJBig2_TRDProc::decode_Arith and pull out one of the nullptr decoders and attempt to use it, crashing. This CL adds a check that we have a non-null decoder before attempting to use the decoder. BUG=pdfium:511 Review-Url: https://codereview.chromium.org/2048683002
2016-06-07Add skia bots to trybot listdsinclair
Review-Url: https://codereview.chromium.org/2040213002
2016-06-07xfa_fm2jscontext method cleanup - pt Vdsinclair
Cleans up ::Oneof, ::HasValue, ::Exists, ::Choose, ::Term, ::Rate, ::PV, ::PPmt, ::Pmt, ::NPV, ::IPmt, ::FV, ::CTerm and ::Apr Review-Url: https://codereview.chromium.org/2042843003
2016-06-07Add missing const to CPDF_Stream::InitStream()tsepez
Review-Url: https://codereview.chromium.org/2044453003
2016-06-06Remove unused PS generation code.thestig
CFX_PSRenderer, IFX_PSOutput, CPSOutput, CPSPrinterDriver. Also reland commit 2d63eaa. Review-Url: https://codereview.chromium.org/2019603002
2016-06-06Differentiate GN config settings for core vs third party codeweili
Have different settings for core source code vs third_party code so it is a bit easier to fine tune settings. Review-Url: https://codereview.chromium.org/2041053003
2016-06-06Remove unused CFDE_TxtEdtEngine::SetBufChunkSize().tsepez
In turn, CFDE_TxtEdtBuf::SetChunkSize becomes unused. Review-Url: https://codereview.chromium.org/2042743003
2016-06-06Remove FWL_HTIMER in favor of IWFL_TimerInfotsepez
Review-Url: https://codereview.chromium.org/2037573003
2016-06-06Get rid of unused android GetHandle() and FPF_HFONTtsepez
git grep FPF_HFONT git grep '\bGetHandle\b' show these are unused. Review-Url: https://codereview.chromium.org/2032793003
2016-06-06Clean up C-Style casts in CBC_CodeBase and subclassestsepez
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
2016-06-06Remove FDE_HDEVICESTATE.dsinclair
The value returned is always NULL and when passed as a param is never used. Review-Url: https://codereview.chromium.org/2044623002
2016-06-06Add GIF, BMP, JPEG and TIFF XFA fuzzersdsinclair
Generalize the PNG fuzzer and add fuzzers for the other image types handled by the progressive decoder. BUG=chromium:617659, chromium:616842, chromium:616841, chromium:616839 Review-Url: https://codereview.chromium.org/2045613002
2016-06-06xfa_fm2jscontext method cleanup - pt IVdsinclair
This Cl cleans up ::Num2AllTime, ::GetLocalTimeFormat, ::GetLocalDateFormat, ::DateString2Num, ::GetGMTime, ::IsoTime2Local, ::IsoDate2Local, ::Local2IsoTime, ::Local2IsoDate, ::IsIsoDateTimeFormat, ::IsIsoTimeFormat, ::IsIsoDateFormat, ::TimeFmt, ::Time2Num, ::Time, ::Num2Time, ::Num2GMTime, ::Num2Date, ::LocalTimeFmt and ::LocalDateFmt Review-Url: https://codereview.chromium.org/2043743002
2016-06-06Make GetDevFont() return a CFX_Font* instead of void*tsepez
Then we can remove a bunch of casts. Review-Url: https://codereview.chromium.org/2033243004
2016-06-06Remove unused context param from execute.dsinclair
The IJS_Context parameter is never used, removed. Review-Url: https://codereview.chromium.org/2035743002
2016-06-06XFA PNG Fuzzerchromium/2762chromium/2761dsinclair
This CL creates a fuzzer for the CCodec_PngModule code. BUG=chromium:616838 Review-Url: https://codereview.chromium.org/2047453002
2016-06-03Rename CFX_GEFont to CFGAS_GEFonttsepez
It implements IFGAS_Font and is unrelated to CFX Fonts, except as a wrapper. Review-Url: https://codereview.chromium.org/2037753005
2016-06-03Rename IFX_FontMgr to IFGAS_FontMgrtsepez
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
2016-06-03Fix more bugs found by /analyze toolweili
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
2016-06-03Rename IFX_Font to IFGAS_Fonttsepez
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
2016-06-03Remove two unused opaque handle typestsepez
Review-Url: https://codereview.chromium.org/2038913002
2016-06-03Fix some code which causes warnings when compiled by /analyze toolweili
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
2016-06-03LCMS: Update FROM_16_TO_8 macro not to raise UBSan errorochang
Cherry-picked from upstream commit 6da55e0b51124b795b707d318c0e03252222ba06 BUG=chromium:616253 Review-Url: https://codereview.chromium.org/2034123003
2016-06-02Remove FXJSE_Value_ToObject and call methods directlydsinclair
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
2016-06-02Fix all the code which has duplicate variable declarationsweili
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
2016-06-02Replace FWL_HLISTITEM with class IFWL_ListItem {}tsepez
Make CFWL_ classes inherit from IFWL_ListItem. Replace reinterpret_casts with static_casts. Review-Url: https://codereview.chromium.org/2029923002
2016-06-02Remove unused code for Arabic char and line handlingweili
The code is not used anywhere, and it may contain bugs. Review-Url: https://codereview.chromium.org/2036573002
2016-06-02The PDFium source in core/fxge/dib implements a bit-blitting backend.caryclark
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
2016-06-02Change ThrowScriptErrorMessage() to just ThrowException().dsinclair
Shorter and easier to remember. Review-Url: https://codereview.chromium.org/2029043002
2016-06-01Change CFX_Font::GetPsName() to return a CFX_ByteString.thestig
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
2016-06-01xfa_fm2jscontext method cleanup - pt IIIdsinclair
Cleanup ::Min, ::Mod, ::Round, ::Date2Num, ::DateFmt and ::ISoTime2Num. Review-Url: https://codereview.chromium.org/2028063002
2016-06-01Remove unused LoadString values, cleanup remaining strings.dsinclair
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
2016-06-01Stop casting struct CFXJSE_ArgumentsImpl to unrelated class CFXJSE_Argumentstsepez
Remove the 'Impl entirely, and put the details into the class itself. Review-Url: https://codereview.chromium.org/2036513002