diff options
author | Lei Zhang <thestig@chromium.org> | 2017-10-30 21:37:01 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-10-30 21:37:01 +0000 |
commit | cd1fd6bc4343c303ee786983dc5dd41a2e0bc16c (patch) | |
tree | ca4ef3e2c8566a04b538be9815b98f2bec7094b9 /core/fxge | |
parent | f0a7da7ec654a8a33b5f347074de69a5a8b769e2 (diff) | |
download | pdfium-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>
Diffstat (limited to 'core/fxge')
-rw-r--r-- | core/fxge/win32/cfx_psrenderer.cpp | 12 |
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 << " " |