From 1150c58c0608aa4e44c49b7a48844b714a30e3ec Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Mon, 31 Mar 2025 14:35:49 +0200 Subject: [PATCH] [PATCH] Move isOk check to inside JBIG2Bitmap::combine Origin: upstream 25.04 Gbp-Pq: Name CVE-2025-32365.patch --- poppler/JBIG2Stream.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/poppler/JBIG2Stream.cc b/poppler/JBIG2Stream.cc index cf9e0c9..4e81d4a 100644 --- a/poppler/JBIG2Stream.cc +++ b/poppler/JBIG2Stream.cc @@ -15,7 +15,7 @@ // // Copyright (C) 2006 Raj Kumar // Copyright (C) 2006 Paul Walmsley -// Copyright (C) 2006-2010, 2012, 2014-2022, 2024 Albert Astals Cid +// Copyright (C) 2006-2010, 2012, 2014-2022, 2024, 2025 Albert Astals Cid // Copyright (C) 2009 David Benjamin // Copyright (C) 2011 Edward Jiang // Copyright (C) 2012 William Bader @@ -768,6 +768,9 @@ 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; @@ -2198,9 +2201,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.30.2