external/liborcus/UnpackedTarball_liborcus.mk |   14 +++++++++----
 external/liborcus/forcepoint-87.patch.1       |   27 ++++++++++++++++++++++++++
 external/liborcus/forcepoint-95.patch.1       |   11 ++++++++++
 3 files changed, 48 insertions(+), 4 deletions(-)

New commits:
commit 50f0dc8d49d52a9c8bc2079c69bd5feb150cd71a
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Fri Mar 25 10:14:19 2022 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Mon Apr 4 19:13:45 2022 +0200

    forcepoint#95 read past end of malformed document
    
    Change-Id: I8b2c558c733af3d7662f668af47e962e252ee339
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132311
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    (cherry picked from commit 0b9892fee990b7f6d0457ab6191f87c3991580e6)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132414
    Reviewed-by: Michael Stahl <michael.st...@allotropia.de>

diff --git a/external/liborcus/UnpackedTarball_liborcus.mk 
b/external/liborcus/UnpackedTarball_liborcus.mk
index 3dbcef54ee52..e9ce3f16c356 100644
--- a/external/liborcus/UnpackedTarball_liborcus.mk
+++ b/external/liborcus/UnpackedTarball_liborcus.mk
@@ -15,10 +15,14 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,liborcus,1))
 
 $(eval $(call gb_UnpackedTarball_update_autoconf_configs,liborcus))
 
-# forcepoint-83.patch.1 submitted as
-# https://gitlab.com/orcus/orcus/-/merge_requests/117
-# forcepoint-84.patch.1 submitted as
-# https://gitlab.com/orcus/orcus/-/merge_requests/118
+# forcepoint-83.patch.1 merged as
+# 
https://gitlab.com/orcus/orcus/-/commit/9f6400b8192e39fefd475a96222713e9e9c60038
+# forcepoint-84.patch.1 merged as
+# 
https://gitlab.com/orcus/orcus/-/commit/223defe95d6f20f1bc5fd22fecc80a79a9519028
+# forcepoint-87.patch.1 merged as
+# 
https://gitlab.com/orcus/orcus/-/commit/a718524ca424fb8a7e7931345a118342d1d4a507
+# forcepoint-95.patch.1 submitted as
+# https://gitlab.com/orcus/orcus/-/merge_requests/124
 
 $(eval $(call gb_UnpackedTarball_add_patches,liborcus,\
        external/liborcus/rpath.patch.0 \
@@ -34,6 +38,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,liborcus,\
        external/liborcus/forcepoint-83.patch.1 \
        external/liborcus/forcepoint-84.patch.1 \
        external/liborcus/forcepoint-87.patch.1 \
+       external/liborcus/forcepoint-95.patch.1 \
 ))
 
 ifeq ($(OS),WNT)
diff --git a/external/liborcus/forcepoint-95.patch.1 
b/external/liborcus/forcepoint-95.patch.1
new file mode 100644
index 000000000000..93dc822298b0
--- /dev/null
+++ b/external/liborcus/forcepoint-95.patch.1
@@ -0,0 +1,11 @@
+--- a/include/orcus/sax_parser.hpp     2022-03-30 10:54:44.043568760 +0100
++++ b/include/orcus/sax_parser.hpp     2022-03-30 10:54:55.645037322 +0100
+@@ -547,7 +547,7 @@
+ 
+     skip_space_and_control();
+ 
+-    char c = cur_char();
++    char c = cur_char_checked();
+     if (c != '=')
+     {
+         std::ostringstream os;
commit efed5861b51cd54182e2c173a0fc98dee2a7742f
Author:     Caolán McNamara <caol...@redhat.com>
AuthorDate: Fri Mar 25 09:12:30 2022 +0000
Commit:     Caolán McNamara <caol...@redhat.com>
CommitDate: Mon Apr 4 19:13:31 2022 +0200

    forcepoint#87 Assertion 'mp_char <= mp_end' failed
    
    Change-Id: I434928cb2425a2e8eb9440dff67f52cda241b2d9
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132097
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caol...@redhat.com>
    (cherry picked from commit 32019baffa19a8f79cacf93d5dd5a95c7d416657)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132413
    Reviewed-by: Michael Stahl <michael.st...@allotropia.de>
    Tested-by: Caolán McNamara <caol...@redhat.com>

diff --git a/external/liborcus/UnpackedTarball_liborcus.mk 
b/external/liborcus/UnpackedTarball_liborcus.mk
index 0c54dd5e5ef2..3dbcef54ee52 100644
--- a/external/liborcus/UnpackedTarball_liborcus.mk
+++ b/external/liborcus/UnpackedTarball_liborcus.mk
@@ -33,6 +33,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,liborcus,\
        external/liborcus/allow-utf-8-in-xml-names.patch \
        external/liborcus/forcepoint-83.patch.1 \
        external/liborcus/forcepoint-84.patch.1 \
+       external/liborcus/forcepoint-87.patch.1 \
 ))
 
 ifeq ($(OS),WNT)
diff --git a/external/liborcus/forcepoint-87.patch.1 
b/external/liborcus/forcepoint-87.patch.1
new file mode 100644
index 000000000000..ddc9118a43ed
--- /dev/null
+++ b/external/liborcus/forcepoint-87.patch.1
@@ -0,0 +1,27 @@
+From e4f3741197a3af6d434850d388483b523138a214 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caol...@redhat.com>
+Date: Thu, 24 Mar 2022 21:31:14 +0000
+Subject: [PATCH] forcepoint#87 Assertion `mp_char <= mp_end' failed
+
+soffice.bin: ../../include/orcus/parser_base.hpp:65: bool 
orcus::parser_base::has_char() const: Assertion `mp_char <= mp_end' failed.
+---
+ src/parser/sax_parser_base.cpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/parser/sax_parser_base.cpp b/src/parser/sax_parser_base.cpp
+index 46acb81d..cb7a9c04 100644
+--- a/src/parser/sax_parser_base.cpp
++++ b/src/parser/sax_parser_base.cpp
+@@ -293,7 +293,8 @@
+ 
+     // Skip the closing quote.
+     assert(!has_char() || cur_char() == quote_char);
+-    next();
++    if (has_char())
++       next();
+ }
+ 
+ bool parser_base::value(pstring& str, bool decode)
+-- 
+2.35.1
+

Reply via email to