summaryrefslogtreecommitdiff
path: root/source/l/poppler/poppler_xyscale.patch
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/poppler/poppler_xyscale.patch')
-rw-r--r--source/l/poppler/poppler_xyscale.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/source/l/poppler/poppler_xyscale.patch b/source/l/poppler/poppler_xyscale.patch
new file mode 100644
index 00000000..bd23d36c
--- /dev/null
+++ b/source/l/poppler/poppler_xyscale.patch
@@ -0,0 +1,47 @@
+From 36481939e3064de920e49d9d1742a85473a50963 Mon Sep 17 00:00:00 2001
+From: Thomas Freitag <Thomas.Freitag@alfa.de>
+Date: Sun, 22 Jul 2012 16:40:46 +0000
+Subject: Make sure xScale and yScale are always initialized
+
+Bug #52215
+---
+diff --git a/poppler/PSOutputDev.cc b/poppler/PSOutputDev.cc
+index a01a4b3..e15c2e9 100644
+--- a/poppler/PSOutputDev.cc
++++ b/poppler/PSOutputDev.cc
+@@ -3521,6 +3521,7 @@ void PSOutputDev::startPage(int pageNum, GfxState *state) {
+ saveState(NULL);
+ }
+
++ xScale = yScale = 1;
+ switch (mode) {
+
+ case psModePSOrigPageSizes:
+@@ -3631,8 +3632,6 @@ void PSOutputDev::startPage(int pageNum, GfxState *state) {
+ } else {
+ yScale = xScale;
+ }
+- } else {
+- xScale = yScale = 1;
+ }
+ // deal with odd bounding boxes or clipping
+ if (clipLLX0 < clipURX0 && clipLLY0 < clipURY0) {
+@@ -3694,7 +3693,6 @@ void PSOutputDev::startPage(int pageNum, GfxState *state) {
+ if (tx != 0 || ty != 0) {
+ writePSFmt("{0:.6g} {1:.6g} translate\n", tx, ty);
+ }
+- xScale = yScale = 1;
+ break;
+
+ case psModeForm:
+@@ -3702,7 +3700,6 @@ void PSOutputDev::startPage(int pageNum, GfxState *state) {
+ writePS("begin xpdf begin\n");
+ writePS("pdfStartPage\n");
+ tx = ty = 0;
+- xScale = yScale = 1;
+ rotate = 0;
+ break;
+ }
+--
+cgit v0.9.0.2-2-gbebe
+