summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2017-10-30 21:37:01 +0000
committerChromium commit bot <commit-bot@chromium.org>2017-10-30 21:37:01 +0000
commitcd1fd6bc4343c303ee786983dc5dd41a2e0bc16c (patch)
treeca4ef3e2c8566a04b538be9815b98f2bec7094b9
parentf0a7da7ec654a8a33b5f347074de69a5a8b769e2 (diff)
downloadpdfium-cd1fd6bc4343c303ee786983dc5dd41a2e0bc16c.tar.xz
M63: PostScript: Do not send fonts with size <= 0 to printers
Bug: chromium:767343 TBR=rbpotter@chromium.org Change-Id: I9321e7565feb423a1283c74e91297eeaeb80083f Reviewed-on: https://pdfium-review.googlesource.com/16410 Reviewed-by: Lei Zhang <thestig@chromium.org> Commit-Queue: Rebekah Potter <rbpotter@chromium.org> (cherry picked from commit d0b48fa54263ac6d5bdd3d7ffadfb7010b9c77da) Reviewed-on: https://pdfium-review.googlesource.com/17170 Commit-Queue: Lei Zhang <thestig@chromium.org>
-rw-r--r--core/fxge/win32/cfx_psrenderer.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/core/fxge/win32/cfx_psrenderer.cpp b/core/fxge/win32/cfx_psrenderer.cpp
index d97391822a..ecfab49c38 100644
--- a/core/fxge/win32/cfx_psrenderer.cpp
+++ b/core/fxge/win32/cfx_psrenderer.cpp
@@ -644,16 +644,20 @@ bool CFX_PSRenderer::DrawText(int nChars,
const CFX_Matrix* pObject2Device,
float font_size,
uint32_t color) {
- StartRendering();
- int alpha = FXARGB_A(color);
- if (alpha < 255)
- return false;
+ // Do not send zero or negative font sizes to printers. See crbug.com/767343.
+ if (font_size <= 0.0)
+ return true;
if ((pObject2Device->a == 0 && pObject2Device->b == 0) ||
(pObject2Device->c == 0 && pObject2Device->d == 0)) {
return true;
}
+ StartRendering();
+ int alpha = FXARGB_A(color);
+ if (alpha < 255)
+ return false;
+
SetColor(color);
std::ostringstream buf;
buf << "q[" << pObject2Device->a << " " << pObject2Device->b << " "