Age | Commit message (Collapse) | Author |
|
BUG=497357
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1395493003 .
|
|
It's a bug existing in the conversion from YUV420 to RGB.
For YUV 420 format, four pixels have 4 Y but only one U and
one V. In some cases, there are odd columns or lines in
some images. The pixels on last line or column may have Y
but no U or V data. For this case, We shall extend U or V
using the data on previous column or line.
BUG=497357
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1342683002 .
|
|
Just get rid of the malloc altogether and use CJBig2_List instead.
BUG=540873
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1394933002 .
(cherry picked from commit 06f255ca4040f3d73cf09f1dbd63a3b167f6a4c1)
Review URL: https://codereview.chromium.org/1400663003 .
|
|
- Makes the cache be per-document
- Keys the cache on ObjNum and stream offset instead of keying on a pointer to the data (which can result in false cache hits).
- Makes it so the cache is only used for the globals stream.
- Reenable the cache.
R=dml@google.com
TBR=dml@google.com
BUG=pdfium:207
Review URL: https://codereview.chromium.org/1380243004 .
(cherry picked from commit f1b88e76134808f36f16b9e53a2e9dd89b12c8fd)
Review URL: https://codereview.chromium.org/1394373002 .
|
|
Also mark it private.
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1395613003 .
(cherry picked from commit 8793b4a071fad51a770b93838e0752505b020e43)
Review URL: https://codereview.chromium.org/1397853002 .
|
|
CPDF_SyntaxParser::ReadStream() originally created stream objects when
the length is 0. Commit 2526930 tightened the constraint and returned
NULL. This has some adverse affects, as seen in Chromium's print
preview of PDFs.
Instead, relax the constraint a little so when the length is 0, return a
CPDF_Stream with NULL data and size 0.
BUG=531835
Review URL: https://codereview.chromium.org/1394743002 .
(cherry picked from commit 4fa0e27ba39f49ba92fb4c160ab836a6f1dd2893)
Review URL: https://codereview.chromium.org/1400613002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1393823002 .
(cherry picked from commit a0f2b67bd659e3f1780edfac56d8754bca685d5f)
Review URL: https://codereview.chromium.org/1390883004 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1396533002 .
(cherry picked from commit 80aa8c26887d98f654a9eecf7298663656cfc40f)
Review URL: https://codereview.chromium.org/1396743002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1382613003 .
(cherry picked from commit 8a9ce5778e0789beb7ba15a62c592a353a51bcdd)
Review URL: https://codereview.chromium.org/1397683002 .
|
|
many callers can tolerate CJBig2_ArithIntDecoder::decode() OOB failure.
BUG=539749, pdfium:209
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1384663007 .
(cherry picked from commit 35902e725aa6cc83a317c3b6fdd1926b81b8e44b)
Review URL: https://codereview.chromium.org/1396663003 .
|
|
only ever set to false.
TBR=dml@google.com
Review URL: https://codereview.chromium.org/1393153002 .
(cherry picked from commit 1f439a7a3b7c44235ecdac9a411add8fb62b0d83)
Review URL: https://codereview.chromium.org/1392873003 .
|
|
Also change CJBig2_SymbolDict::DeepCopy() to return a unique_ptr to
prevent a potential leak if the cache size was 0.
BUG=pdfium:207
R=tsepez@chromium.org, jbreiden@google.com
Review URL: https://codereview.chromium.org/1374633004 .
(cherry picked from commit fd12ec5584d9a17f310a2c0c408a438ef3b1ce63)
Review URL: https://codereview.chromium.org/1390673002 .
|
|
(cherry picked from commit d7ba833df5c9dc70cb94dba2d0aae1339b345ae4)
Original Review URL: https://codereview.chromium.org/1306883002 .
TBR=forshaw@chromium.org
BUG=523278
Review URL: https://codereview.chromium.org/1383353002 .
|
|
BUG=537772
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1387703002 .
(cherry picked from commit 4f277fc8d41303cbf007335dfbbff60b81fffde0)
Review URL: https://codereview.chromium.org/1380603006 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1360103002 .
(cherry picked from commit b8a074711108baf04017d86207e08c19ff327d8e)
Review URL: https://codereview.chromium.org/1384123002 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1386463003 .
(cherry picked from commit dcfa0ba2928072c962fe8835d1a2ccd309eafbbd)
Review URL: https://codereview.chromium.org/1379093003 .
|
|
Check the image size before attempting to decode.
BUG=538103
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1377493005 .
(cherry picked from commit 9fb70fbded5c0bf4f5313a49fd3496b4d4fa71ca)
Review URL: https://codereview.chromium.org/1379233003 .
|
|
Found using the test examples from https://crbug.com/537780
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1376413003 .
(cherry picked from commit 63d0a52a6af7d327fdb5792f520cc8d93fe2f1bb)
Review URL: https://codereview.chromium.org/1378303006 .
|
|
BUG=537790
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1379243002 .
(cherry picked from commit 095a83c59120c108d9ac6f0ab71fd3faa5eea810)
Review URL: https://codereview.chromium.org/1380563003 .
|
|
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1378303002 .
|
|
This is a manual merge of 7f6b6677665588a27b9d14babc6358840454ce17
Original review: https://codereview.chromium.org/1085363003
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1381513005 .
|
|
This is a manual merge.
Original review: https://codereview.chromium.org/1052553006
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1384643002 .
|
|
BUG=pdfium:207
Original author: jbreiden@google.com
Original CL: http://codereview.chromium.org/1362133003/
TBR=jbreiden@google.com
Review URL: https://codereview.chromium.org/1382073002 .
(cherry picked from commit 7886d8dcf3bc9ef9b51e733d77bd3243ef32adb8)
Review URL: https://codereview.chromium.org/1379603004 .
|
|
Manual merge of commit 357d16f8453c2cf0c0afd00eec9e86d03d55fe69.
Original code review: https://codereview.chromium.org/1090693002
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1379683006 .
|
|
- Use std::vector<uint8_t> instead of raw uint8_t*
- Make ICodec_ScanlineDecoder::GetScanline() return const uint8_t*
- Add FxFreeDeleter, use it in CCodec_ImageDataCache.
- Make CCodec_ImageDataCache encapsulate its data members.
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1361053002 .
(cherry picked from commit 022da0014faa103901ec107ed6a33e5ab00c7931)
Review URL: https://codereview.chromium.org/1372993003 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1359013003 .
(cherry picked from commit ce37d7347f1ab4c9fc1f48a137628da641bb4f14)
Review URL: https://codereview.chromium.org/1386473002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1368153003 .
(cherry picked from commit 0fef7dd405ac85660dbeddd2e47620daffa70cb5)
Review URL: https://codereview.chromium.org/1381633003 .
|
|
For bit per component (bpc), PDF spec mentions that a RunLengthDecode or
DCTDecode filter shall always deliver 8-bit samples. However, some PDF files
don't follow this rule. We can find that filter is RunLengthDecode but bpc is
1 in the provided test file. In this case, pdfium will correct bpc to 8 but
the actual bpc is 1. It causes a failure because the data is much more than
the expected. To handle this case, pdfium doesn't correct bpc to 8 when the
original bpc is 1.
BUG=512557
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1328213002 .
|
|
R=tsepez@chromium.org
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1367633005 .
(cherry picked from commit 39cd934a4705f69c30e1bbf13eab347f66999020)
Review URL: https://codereview.chromium.org/1370273002 .
|
|
Pdfium swallows 'fi' or 'ff' in some tested files because it doesn't load the embedded font file correctly. The root cause is that there is incorrect keyword like 'ngendstream' in the stream of the embedded font file. Pdfium tries to find another correct keyword but uses wrong offset rather than accumulated offset.
BUG=524043
TBR=jun_fang@foxitsoftware.com
Review URL: https://codereview.chromium.org/1307353005 .
(cherry picked from commit 9bd18183ba8210c91d71c3060146235750a4c71c)
Review URL: https://codereview.chromium.org/1365253003 .
|
|
- Remove dead code
- Use unique_ptr
BUG=pdfium:202
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1365903002 .
(cherry picked from commit 01c1e54a506329b36f87b0e37d3b419b70973342)
Review URL: https://codereview.chromium.org/1371513002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1359233002 .
(cherry picked from commit 630a28442364f03c1d3d9b48873da42755e1fddf)
Review URL: https://codereview.chromium.org/1364083004 .
|
|
TBR=jbreiden@google.com
Review URL: https://codereview.chromium.org/1346043003 .
(cherry picked from commit b6b336a0a1849526f66c49588daa2ccdd09d42cd)
Review URL: https://codereview.chromium.org/1365813004 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1268323004 .
(cherry picked from commit 9311163b564785a3a3ccdcb09bd3b7d0b2976d1a)
Review URL: https://codereview.chromium.org/1368513002 .
|
|
Code is mostly stolen from Chromium's scoped_ptr.
- Add unit tests.
- Use this to fix a leak.
BUG=chromium:531408
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1351383004 .
(cherry picked from commit cef2a9c51bee4b987fc813013d45dad6535a9a46)
Review URL: https://codereview.chromium.org/1358163003 .
|
|
Discovered with experimental Clang plugin that flags temporary objects
that are immediately destroyed.
patch from issue 1359063003 at patchset 1 (http://crrev.com/1359063003#ps1)
A=mdempsky@chromium.org
TBR=mdempsky@chromium.org
Review URL: https://codereview.chromium.org/1359103002 .
(cherry picked from commit f316bfe37e2fc977376e18f7534aae9824da240a)
Review URL: https://codereview.chromium.org/1362863002 .
|
|
Not sure why building with gyp was working despite the missing '../' but
it wasn't working in stricter build systems.
TBR=dml@google.com
Review URL: https://codereview.chromium.org/1321293003.
(cherry picked from commit fa31d9630aadfe101d3b35e26ce0fc926ec1505b)
Review URL: https://codereview.chromium.org/1345313003 .
|
|
TBR=dml@google.com
Review URL: https://codereview.chromium.org/1329343002.
(cherry picked from commit 8ad46d3d6829d879cd342caec4c6f7eaae43cba0)
Review URL: https://codereview.chromium.org/1346843005 .
|
|
R=tsepez@chromium.org
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1332193002 .
(cherry picked from commit da0938f8671958aba0522a69fc687a7bbb01b435)
Review URL: https://codereview.chromium.org/1350453002 .
|
|
The API is the same as the Foxit version, except the encoding is
specified as UTF-8 instead of local encoding.
Also remove CPDF_LWinParam since it's unused.
BUG=chromium:517713
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1335373002 .
(cherry picked from commit 0b3c8f742613da294f812e2f6e908f4026499f96)
(cherry picked from commit a9d4bc541179ec0436adc4b2e18b7fdecc5952dc)
(cherry picked from commit 4ffd89ed556e32a6527d0e88952fe20ec1e2f362)
Review URL: https://codereview.chromium.org/1345953002 .
|
|
- FX_Alloc() can't fail and return.
- Use unique_ptr / remove gotos.
- NULL -> nullptr.
- Combine common code.
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1337823003 .
(cherry picked from commit d15cda90f598ce52fa601552577ef7fd8a89fce3)
Review URL: https://codereview.chromium.org/1349463002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1338573002 .
(cherry picked from commit a5fde67ea3c9d20d3f19354ec9e7e1be600d7589)
Review URL: https://codereview.chromium.org/1350463002 .
|
|
Also convert some FX_AllocOrDie() calls to FX_Alloc().
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1332173002 .
(cherry picked from commit 6aca3e209ff6148f1d77b86b8b97d3bdf18e3eba)
Review URL: https://codereview.chromium.org/1344233002 .
|
|
Credit to karl at skomski.com for the initial version of the CL.
BUG=527174
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1305033006 .
(cherry picked from commit 89d8b4681ce98894a1ee1a6cf4bae77e00d28797)
Review URL: https://codereview.chromium.org/1331303002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1326953006 .
(cherry picked from commit 70f4404e9a9e69afdfdd07715aa946f6561ce0cb)
Review URL: https://codereview.chromium.org/1336783002 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1327983003 .
(cherry picked from commit 6087a2f18e0c779c1bae62812801cee98fe8a09d)
Review URL: https://codereview.chromium.org/1335793003 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1319713003 .
(cherry picked from commit 800bf5ac07305ccf9c9522c8c76f728a4fd99da5)
Review URL: https://codereview.chromium.org/1332153002 .
|
|
CPDF_Object::GetDict() always returns a valid pointer for dictionaries.
R=tsepez@chromium.org
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1317733007 .
(cherry picked from commit 2f740a8bd61c1c198796dd5e2124d007267f9c1a)
Review URL: https://codereview.chromium.org/1323263006 .
|
|
BUG=522131
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1327913002 .
(cherry picked from commit 640c395fa9b76552383ccd0c5f4668ea698089f6)
Review URL: https://codereview.chromium.org/1309263006 .
|
|
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1328643002 .
(cherry picked from commit 9df5d9701ddf75f8050566132694bf435efb3ca0)
Review URL: https://codereview.chromium.org/1319563003 .
|