[poppler] qt5/src qt6/src

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 7 23:17:29 UTC 2021


 qt5/src/poppler-annotation-helper.h |    9 +++++++--
 qt6/src/poppler-annotation-helper.h |    9 +++++++--
 2 files changed, 14 insertions(+), 4 deletions(-)

New commits:
commit 4ef3535bffedd217707ea16f2ba415dbcdc1ed41
Author: Albert Astals Cid <aacid at kde.org>
Date:   Sat May 8 01:11:57 2021 +0200

    qt: Don't assert when trying to invert singular matrices
    
    oss-fuzz/33611

diff --git a/qt5/src/poppler-annotation-helper.h b/qt5/src/poppler-annotation-helper.h
index c96b7dfc..b294a084 100644
--- a/qt5/src/poppler-annotation-helper.h
+++ b/qt5/src/poppler-annotation-helper.h
@@ -1,5 +1,5 @@
 /* poppler-annotation-helper.h: qt interface to poppler
- * Copyright (C) 2006, 2008, 2017-2019, Albert Astals Cid <aacid at kde.org>
+ * Copyright (C) 2006, 2008, 2017-2019, 2021, Albert Astals Cid <aacid at kde.org>
  * Copyright (C) 2008, Pino Toscano <pino at kde.org>
  * Copyright (C) 2012, Fabio D'Urso <fabiodurso at hotmail.it>
  * Copyright (C) 2018, Dileep Sankhla <sankhla.dileep96 at gmail.com>
@@ -55,7 +55,12 @@ void XPDFReader::transform(double *M, double x, double y, QPointF &res)
 void XPDFReader::invTransform(const double *M, const QPointF p, double &x, double &y)
 {
     const double det = M[0] * M[3] - M[1] * M[2];
-    Q_ASSERT(det != 0);
+    if (det == 0) {
+        qWarning("Tried to invert singular matrix, something won't work");
+        x = 0;
+        y = 0;
+        return;
+    }
 
     const double invM[4] = { M[3] / det, -M[1] / det, -M[2] / det, M[0] / det };
     const double xt = p.x() - M[4];
diff --git a/qt6/src/poppler-annotation-helper.h b/qt6/src/poppler-annotation-helper.h
index c96b7dfc..b294a084 100644
--- a/qt6/src/poppler-annotation-helper.h
+++ b/qt6/src/poppler-annotation-helper.h
@@ -1,5 +1,5 @@
 /* poppler-annotation-helper.h: qt interface to poppler
- * Copyright (C) 2006, 2008, 2017-2019, Albert Astals Cid <aacid at kde.org>
+ * Copyright (C) 2006, 2008, 2017-2019, 2021, Albert Astals Cid <aacid at kde.org>
  * Copyright (C) 2008, Pino Toscano <pino at kde.org>
  * Copyright (C) 2012, Fabio D'Urso <fabiodurso at hotmail.it>
  * Copyright (C) 2018, Dileep Sankhla <sankhla.dileep96 at gmail.com>
@@ -55,7 +55,12 @@ void XPDFReader::transform(double *M, double x, double y, QPointF &res)
 void XPDFReader::invTransform(const double *M, const QPointF p, double &x, double &y)
 {
     const double det = M[0] * M[3] - M[1] * M[2];
-    Q_ASSERT(det != 0);
+    if (det == 0) {
+        qWarning("Tried to invert singular matrix, something won't work");
+        x = 0;
+        y = 0;
+        return;
+    }
 
     const double invM[4] = { M[3] / det, -M[1] / det, -M[2] / det, M[0] / det };
     const double xt = p.x() - M[4];


More information about the poppler mailing list