Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(74)

Issue 1328213002: Fix blank page issue caused by too strict correction on bpc (Closed)

Created:
5 years, 3 months ago by jun_fang
Modified:
5 years, 2 months ago
Reviewers:
Tom Sepez, Lei Zhang
CC:
pdfium-reviews_googlegroups.com, kai_jing, steven_wu
Base URL:
https://pdfium.googlesource.com/pdfium.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix blank page issue caused by too strict correction on bpc 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 Committed: https://pdfium.googlesource.com/pdfium/+/3500e90e9e42fa84dd6f07da16cfcf197ec98283

Patch Set 1 #

Total comments: 2

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+5 lines, -2 lines) Patch
M core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp View 1 1 chunk +5 lines, -2 lines 0 comments Download
A testing/resources/pixel/bug_512557.in View 1 2 3 Binary file 0 comments Download
A testing/resources/pixel/bug_512557_expected.pdf.0.png View 1 2 3 Binary file 0 comments Download

Messages

Total messages: 11 (1 generated)
jun_fang
On 2015/09/08 10:17:09, jun_fang wrote: > mailto:jun_fang@foxitsoftware.com changed reviewers: > + mailto:thestig@chromium.org, mailto:tsepez@chromium.org Hi Tom ...
5 years, 3 months ago (2015-09-08 10:18:20 UTC) #2
Tom Sepez
https://codereview.chromium.org/1328213002/diff/1/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp File core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp (right): https://codereview.chromium.org/1328213002/diff/1/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp#newcode960 core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp:960: if (filter == FX_BSTRC("RunLengthDecode") && m_bpc != 1) { ...
5 years, 3 months ago (2015-09-08 15:47:19 UTC) #3
Tom Sepez
Test case?
5 years, 3 months ago (2015-09-08 15:48:29 UTC) #4
jun_fang
https://codereview.chromium.org/1328213002/diff/1/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp File core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp (right): https://codereview.chromium.org/1328213002/diff/1/core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp#newcode960 core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp:960: if (filter == FX_BSTRC("RunLengthDecode") && m_bpc != 1) { ...
5 years, 3 months ago (2015-09-09 09:57:12 UTC) #5
jun_fang
On 2015/09/08 15:48:29, Tom Sepez wrote: > Test case? Hi Tom, I suggest to add ...
5 years, 3 months ago (2015-09-09 10:06:20 UTC) #6
Tom Sepez
On 2015/09/09 10:06:20, jun_fang wrote: > On 2015/09/08 15:48:29, Tom Sepez wrote: > > Test ...
5 years, 3 months ago (2015-09-09 17:36:51 UTC) #7
jun_fang
On 2015/09/09 17:36:51, Tom Sepez wrote: > On 2015/09/09 10:06:20, jun_fang wrote: > > On ...
5 years, 2 months ago (2015-09-28 08:14:44 UTC) #8
Tom Sepez
lgtm
5 years, 2 months ago (2015-09-28 16:01:07 UTC) #9
jun_fang
Committed patchset #4 (id:60001) manually as 3500e90e9e42fa84dd6f07da16cfcf197ec98283 (presubmit successful).
5 years, 2 months ago (2015-09-29 02:25:24 UTC) #10
Lei Zhang
5 years, 2 months ago (2015-09-29 02:50:09 UTC) #11
Message was sent while issue was closed.
BTW, this was merged to XFA without a code review as
3d494aff5ee1d0d313ccdce0aaf4ae44078bcd52

Powered by Google App Engine
This is Rietveld 408576698