summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
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 .
2015-11-19Cache object numbers in CPDF_Parser::ParseIndirectObject().Lei Zhang
R=jun_fang@foxitsoftware.com, tsepez@chromium.org Review URL: https://codereview.chromium.org/1458633004 .
2015-11-19Add more overrides.Lei Zhang
Using Chromium's clang + build options, there's more override warnings. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1453643002 .
2015-11-19Add a missing setjmp() to CCodec_JpegDecoder::v_GetNextLine().Oliver Chang
If jpeg_read_scanlines() ends up calling the error callback, we longjmp into some undefined state. BUG=558840 R=thestig@chromium.org, tsepez@chromium.org Review URL: https://codereview.chromium.org/1463563003 .
2015-11-19Remove CFX_Matrix::Reset()Tom Sepez
It's unused on master, and on XFA, directly calling SetIdentity() is clearer to the reader anyways. R=thestig@chromium.org Review URL: https://codereview.chromium.org/1459243002 .
2015-11-19Make core in master match XFA.Tom Sepez
This weeks version, mostly whitespace. TBR=thestig@chromium.org Review URL: https://codereview.chromium.org/1466503002 .
2015-11-19Remove unused functionchromium/2573chromium/2572chromium/2571chromium/2570chromium/2569Hans Wennborg
It was breaking the Windows Clang build. BUG=82385 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1459723005 .
2015-11-17Fix typo from commit r447946588d6b.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1452843005 .
2015-11-17Fix Windows build after commit 9c62cadff466.Lei Zhang
TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1456823002 .
2015-11-17Make CPDF_InterForm::AddStandardFont take a non-const document pointer.Lei Zhang
Instead of taking a const pointer, and then casting away the const-ness. Also remove similar, but dead CPDF_InterForm methods. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1456763003 .
2015-11-17Add more fxcrt string sanity tests.Lei Zhang
Sadly I've gotten these to fail with Chromium debug builds. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1447163004 .
2015-11-16Reland "Cleanup some numeric code.""chromium/2567Dan Sinclair
This reverts commit 0569ab0b11b723d9bca4ddd642b0cf8828c4bdd1. This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1449873003 .
2015-11-12Remove relative includes.Lei Zhang
That refer to parent directories. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1434223002 .
2015-11-12Clear decoders after the image decoder in the /Filter array.Oliver Chang
During decoding, when an image decoder is encountered, any subsequent decoders are ignored, but remain in the array. However, later on CPDF_DIBSource::ValidateDictParam expects the image decoder to be the last in the array, causing issues. A check is also added in CPDF_DIBSource::GetScanline to ensure that the calculated pitch value is <= the (4-aligned) pitch value in the cached bitmap to prevent future issues. Also cleans up some NULL usages. BUG=552046 R=jun_fang@foxitsoftware.com, tsepez@chromium.org Review URL: https://codereview.chromium.org/1406943005 .
2015-11-11Fix / simplify CFX_FolderFontInfo::GetFontData() behavior.Lei Zhang
The GetFontData() behavior in FPDF_SYSFONTINFO seems reasonable. Also do some code cleanup. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1425023003 .
2015-11-11(Reland) Fix extraction of colour components in ↵Oliver Chang
CPDF_DIBSource::DownSampleScanline32Bit Previously, if |m_bpc| was < 8 (e.g. 4), this function may still try to access the source components as if |m_bpc| == 8. Even when it fell into the codepath that tried to do the right thing in this case, it was wrong. BUG=554151 R=tsepez@chromium.org, thestig@chromium.org Committed: https://pdfium.googlesource.com/pdfium/+/9b99615806e358fdb396d1cb162ee2e69c2a20ec Review URL: https://codereview.chromium.org/1433423002 .
2015-11-11Revert "Fix extraction of colour components in ↵Oliver Chang
CPDF_DIBSource::DownSampleScanline32Bit" This reverts commit 9b99615806e358fdb396d1cb162ee2e69c2a20ec. Broke Windows build. TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1437963003 .
2015-11-11Fix extraction of colour components in CPDF_DIBSource::DownSampleScanline32BitOliver Chang
Previously, if |m_bpc| was < 8 (e.g. 4), this function may still try to access the source components as if |m_bpc| == 8. Even when it fell into the codepath that tried to do the right thing in this case, it was wrong. BUG=554151 R=tsepez@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/1433423002 .
2015-11-11Cleanup CPDF_ApSettings and CJS_Parameters.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1432863004 .
2015-11-10Fix CalculatePitch32() issues.Tom Sepez
See bug for details. BUG=pdfium:273 R=thestig@chromium.org Review URL: https://codereview.chromium.org/1432073003 .
2015-11-10Prevent buffer underflow in CPDF_TextObject::CalcPositionDataOliver Chang
R=tsepez@chromium.org BUG=554115 Review URL: https://codereview.chromium.org/1435473004 .
2015-11-10Revert x4 "Cleanup some numeric code."dan sinclair
This reverts commit b27902b8995bb3e003daed6b0811ed746763c68d. Cleanup some numeric code. This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1432973003 .
2015-11-10Cleanup CPDF_Stream:Lei Zhang
- Remove CPDF_Stream::Create() and checks that it might fail. - Remove m_pCryptoHandler that's always a nullptr. - Remove m_FileOffset that's always 0. - Rename file version of InitStream() to InitStreamFromFile(). - Use IsMemoryBased() in more places. R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1415163009 .
2015-11-10Revert "Revert "Revert "Revert "Cleanup some numeric code.""""dan sinclair
This reverts commit da06e60fb5a095a91c9a4f509466667878624cb3. Cleanup some numeric code. This changes the various comparisons of char >= '0' && char <= '9' and char < '0' || char > '9' to use std::isdigit checks. It also cleans up a handful of hex to digit conversions to call one common method. R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1433513002 .
2015-11-10Use unique_ptr and initializer lists in various render files.Lei Zhang
R=dsinclair@chromium.org Review URL: https://codereview.chromium.org/1436573003 .
2015-11-10Remove core/src/fpdfapi/fpdf_font/common.h and use stdint types.Lei Zhang
R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1437603002 .