|
@@ -0,0 +1,41 @@
|
|
|
+From 1f151565bbca5be7449ba8eea6833051cc1baa41 Mon Sep 17 00:00:00 2001
|
|
|
+From: Albert Astals Cid <aacid@kde.org>
|
|
|
+Date: Mon, 31 Mar 2025 14:35:49 +0200
|
|
|
+Subject: [PATCH] Move isOk check to inside JBIG2Bitmap::combine
|
|
|
+
|
|
|
+CVE: CVE-2025-32365
|
|
|
+Upstream-Status: Backport [https://gitlab.freedesktop.org/poppler/poppler/-/commit/1f151565bbca5be7449ba8eea6833051cc1baa41]
|
|
|
+
|
|
|
+Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
|
|
|
+---
|
|
|
+ poppler/JBIG2Stream.cc | 8 +++++---
|
|
|
+ 1 file changed, 5 insertions(+), 3 deletions(-)
|
|
|
+
|
|
|
+diff --git a/poppler/JBIG2Stream.cc b/poppler/JBIG2Stream.cc
|
|
|
+index bdc51d0..2974493 100644
|
|
|
+--- a/poppler/JBIG2Stream.cc
|
|
|
++++ b/poppler/JBIG2Stream.cc
|
|
|
+@@ -770,6 +770,10 @@ void JBIG2Bitmap::combine(JBIG2Bitmap *bitmap, int x, int y, unsigned int combOp
|
|
|
+ unsigned int src0, src1, src, dest, s1, s2, m1, m2, m3;
|
|
|
+ bool oneByte;
|
|
|
+
|
|
|
++ if (unlikely(!isOk())) {
|
|
|
++ return;
|
|
|
++ }
|
|
|
++
|
|
|
+ // check for the pathological case where y = -2^31
|
|
|
+ if (y < -0x7fffffff) {
|
|
|
+ return;
|
|
|
+@@ -2200,9 +2204,7 @@ void JBIG2Stream::readTextRegionSeg(unsigned int segNum, bool imm, bool lossless
|
|
|
+ if (pageH == 0xffffffff && y + h > curPageH) {
|
|
|
+ pageBitmap->expand(y + h, pageDefPixel);
|
|
|
+ }
|
|
|
+- if (pageBitmap->isOk()) {
|
|
|
+- pageBitmap->combine(bitmap.get(), x, y, extCombOp);
|
|
|
+- }
|
|
|
++ pageBitmap->combine(bitmap.get(), x, y, extCombOp);
|
|
|
+
|
|
|
+ // store the region bitmap
|
|
|
+ } else {
|
|
|
+--
|
|
|
+2.40.0
|