summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2015-12-22Revert "Cleanup: Remove unused CFX_PSRenderer and various encoders it used."Lei Zhang
This reverts commit 2d63eaaa39bb3d402c658b2a6e0eae50a30f1d89. Broke the Windows build, though it is likely the code is unused on Windows too. Review URL: https://codereview.chromium.org/1540993004 .
2015-12-22Cleanup: Remove unused CFX_PSRenderer and various encoders it used.Lei Zhang
- Simplify remaining encoders. - Hook up more of the encoding paths so failures get returned. - Clean up code to not pass by non-const ref, use bools, etc. R=ochang@chromium.org Review URL: https://codereview.chromium.org/1545563003 .
2015-12-22Add ContainsKey() and ContainsValue() and use them where appropriate.Lei Zhang
R=ochang@chromium.org Review URL: https://codereview.chromium.org/1540263003 .
2015-12-22Convert CPDF_Parser::m_CrossRef to a std::map.Lei Zhang
This improvements memory usage in case PDFs have sparse object numbers. The map holds a struct that currently has only one member. The struct will contain more members as other internal data structures get converted. BUG=pdfium:111 R=weili@chromium.org Review URL: https://codereview.chromium.org/1539573003 .
2015-12-18Cleanup CJBig2_HuffmanTable and friends.chromium/2599chromium/2598chromium/2597Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1536923002 .
2015-12-18Get rid of a few CPDF_Object Create() methods and just use new instead.Lei Zhang
R=ochang@chromium.org Review URL: https://codereview.chromium.org/1540693002 .
2015-12-18Fix the JBIG2 decoding regressions from commit bc4b82e and 8a9ce57.Lei Zhang
BUG=566063 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1534323002 .
2015-12-18CPDF_ImageLoader::Load() unused.Tom Sepez
Rename a few other things along the way: CPDF_ProgressiveImageLoaderHandle becomes ImageLoaderHandle, since its the only kind, and stop casting it to void*. CPDF_ImageLoader::StartLoadImage() becomes Start(), since the rest is redundant. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1535243002 .
2015-12-18Merge to master: Remove CFX_MapPtrToPtr in CFX_PageRenderCacheTom Sepez
Orignal Review URL: https://codereview.chromium.org/1539983002 . (cherry picked from commit 0fa6fee0e48af8681f0cd50f6a9471ecc0a46c11) TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1536123002 .
2015-12-18CPDF_QuickStretcher unused.Tom Sepez
Apart from it never being initialized, note that m_status is never set to 1, so the only path that references this class can't be reached. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1537103002 .
2015-12-18Fix a memory leak in CPDF_DataAvail::CheckHintTablesOliver Chang
R=thestig@chromium.org, dml@google.com BUG=pdfium:327 Review URL: https://codereview.chromium.org/1536113002 .
2015-12-18Correct return values in CPDF_HintTables::CheckPage()chromium/2596Jun Fang
BUG=pdfium:329 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1529173005 .
2015-12-17Correctly 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 R=jun_fang@foxitsoftware.com, thestig@chromium.org Review URL: https://codereview.chromium.org/1530763005 .
2015-12-17Fix a sentinel length value used in CFX_CMapByteStringToPtr::SetAtOliver Chang
It looks like an key length of 0 was incorrectly assumed to denote an free entry. Fixes a memory leak in FPDFViewEmbeddertest.Crasher_451830 due to values with empty keys being incorrectly overwritten. R=tsepez@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1534953002 .
2015-12-17FX_NAMESPACE_DECLARE pointless.Tom Sepez
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1534003002 .
2015-12-17Tidy CPDF_RenderContextTom Sepez
- Remove unused Clear() method. - Replace Create() with actual ctors. - Avoid const casts. - Protect members. - Add missing const in adjacent code. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1536623004 .
2015-12-16Make clang_warning_flags work for standalone builds.Lei Zhang
Also fix a newly introduced override warning. R=thakis@chromium.org Review URL: https://codereview.chromium.org/1532723003 .
2015-12-15Fix free entry handling for cross reference v4 reading.Wei Li
While reading free entries in v4 cross reference table, changing the start_objnum caused crossref table built wrong. BUG=569795 R=jun_fang@foxitsoftware.com, thestig@chromium.org Review URL: https://codereview.chromium.org/1527823003 .
2015-12-14Fix Windows build failure due to double vs float mismatch.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1525853003 .
2015-12-14Get rid of most instance of 'foo == NULL'Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1520063002 .
2015-12-14Get rid of most instance of 'foo != NULL'Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1512763013 .
2015-12-14Fix another former FX_BSTRC usage with embedded NULs.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1522283002 .
2015-12-14Fix failures after removing FX_BSTRC.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1528743002 .
2015-12-14Remove FX_BSTRC.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1521563002 .
2015-12-14Fix a memory leak in FPDFPageFuncEmbeddertest.chromium/2595chromium/2594chromium/2593Lei Zhang
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1514283002 .
2015-12-14Properly land "Fix hint table loading issues."Oliver Chang
TBR=thestig@chromium.org BUG=566179 Review URL: https://codereview.chromium.org/1524983002 .
2015-12-14Fix hint table loading issues.Oliver Chang
BUG=566179 R=jun_fang@foxitsoftware.com, thestig@chromium.org Review URL: https://codereview.chromium.org/1523523002 .
2015-12-11Fix memory leaks involving InsertIndirectObject()Jun Fang
BUG=447331 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1514093002 .
2015-12-11Fix a regression for parsing '/' - commit a568ff2d was too strict.chromium/2592chromium/2591chromium/2590Lei Zhang
BUG=pdfium:326 R=dml@google.com Review URL: https://codereview.chromium.org/1521543002 .
2015-12-10Fix integer and bounds issues in sycc4{22,44}_to_rgb.Oliver Chang
Also clean up while we're here. BUG=557223 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1512833008 .
2015-12-10Fix build broken at 7db2a535f163Tom Sepez
Missed some conversions in an ifdef mac block. R=thestig@chromium.org TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1511413008 .
2015-12-10Replace several more CFX_MapPtrToPtr with std::set or std::mapTom Sepez
R=thestig@chromium.org Review URL: https://codereview.chromium.org/1520643002 .
2015-12-10Remove CFX_AffineMatrix/CPDF_MatrixTom Sepez
These are synonyms for CFX_Matrix. Nothing but sed and manual deletion of 2 #defines in fpdf_parser.h and fx_coordinates.h R=thestig@chromium.org Review URL: https://codereview.chromium.org/1513363002 .
2015-12-10Cleanup CPDF_DIBSource::LoadColorInfo() and ValidateDictParam().Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1507043004 .
2015-12-09Prevent infinite looping in CPDF_Parser::LoadAllCrossRefV5().Lei Zhang
BUG=pdfium:298 R=weili@chromium.org Review URL: https://codereview.chromium.org/1496703005 .
2015-12-09Add CFX_FontMapper::IsBuiltinFace() in master branchJun Fang
BUG=452793, 561478 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1511613005 .
2015-12-09Merge to master: Fix heap-use-after-free in FT_Stream_ReleaseFrameJun Fang
BUG=452793,561478 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1512873002 . Review URL: https://codereview.chromium.org/1508343004 .
2015-12-09Get rid of most uses of CFX_PtrArray.Tom Sepez
I didn't go whole hog and replace these with std::vector, but in the mean time, it is silly to cast a typedef for a template instantiated against void* when we can just instantiate the template against the actual type. The ones that remain are actual heterogeneous arrays with wacky casting. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1518593002 .
2015-12-08Revert "Merge to master: Take Jun's UTF16LE patches."chromium/2587chromium/2586Oliver Chang
Broke chrome bindings. This reverts commit c3e4ae5fe5067723b58a2029a95c6411c92bed15. R=thestig@chromium.org, tsepez@chromium.org BUG=567485 Review URL: https://codereview.chromium.org/1511773002 .
2015-12-08Fix rendering with built-in CID fontsJun Fang
The root cause is that FXFONT_SUBST_EXACT is wrongly set even no any subset font was found. It causes m_bCIDIsGID to be wrongly set as TRUE in CPDF_CIDFont::_Load(). BUG=534945 R=thestig@chromium.org, tsepez@chromium.org Review URL: https://codereview.chromium.org/1502083002 .
2015-12-06fix for stream object readingWei Li
Loosen a check for earlier version of PDF files. When the bytes with specified length are followed by 'endstream' keyword, even if there is no EOL marker before the keyword, it signals the end of stream. BUG=551258 R=jun_fang@foxitsoftware.com, tsepez@chromium.org Review URL: https://codereview.chromium.org/1499433002 .
2015-12-04Fix an incorrect check in CPDF_DataAvail::CheckHintTables.Oliver Chang
R=tsepez@chromium.org, jun_fang@foxitsoftware.com BUG=566179 Review URL: https://codereview.chromium.org/1504513002 .
2015-12-01Add basic checking for RebuildCrossRefWei Li
RebuildCrossRef function returns false when we can not find file trailer or any indirect object. This serves as a basic file format checking. BUG=pdfium:215 R=jun_fang@foxitsoftware.com Review URL: https://codereview.chromium.org/1476163002 .
2015-11-26Android: look for OTF files as well as TTF and TTC.Andrew Olsen
BUG=pdfium:288 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1476173003 .
2015-11-25Merge to master: Take Jun's UTF16LE patches.Tom Sepez
(cherry picked from commit 8d89e65897d8b6cf7899e7a82d9d381c3ad327cb) (cherry picked from commit c70b19aad245fb1ed39bf8c264d991555f4c5a58) BUG=pdfium:275 TBR=jun_fang@foxitsoftware.com Review URL: https://codereview.chromium.org/1473753004 .
2015-11-25Re-order methods to make xfa diff sanerTom Sepez
Precursor to making fpdf_text_int.cpp match cleanly. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1477433006 .
2015-11-25Fix two memory leaks from pdfium_unittestsQin Zhao
- remove redundant alloc in fx_codec_jpx_unittest.cpp - free memory allocated by HexDecode calls in fpdf_parser_decode_unittest.cpp BUG=PDFium:239 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1467183006 .
2015-11-24Re-virtualize CFX_UnicodeEncoding.Tom Sepez
It's not required on master, but it costs very little and makes XFA line up more closely. Also make InitFTLibrary() public for the same reasons. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1475643003 .
2015-11-24Fix a NULL pointer crash in the CJBig2_Image copy constructor.Lei Zhang
Also change the copy ctor to take a const ref. BUG=560520 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1472113002 .
2015-11-20Change |CCodec_ScanlineDecoder::m_Pitch| to FX_DWORDOliver Chang
This matches the type of the corresponding |CFX_DIBSource::m_Pitch|, where integer overflow is checked for FX_DWORD. This change is propagated to many other places. Also, check for integer overflow in |CCodec_RLScanlineDecoder::Create| during the calculation of |m_Pitch| since it aligns to 4 bytes while overflow was was previously checked without this alignment. R=tsepez@chromium.org, thestig@chromium.org BUG=555784 Review URL: https://codereview.chromium.org/1460033002 .