[Libreoffice-commits] core.git: sax/source

Mike Kaganski mike.kaganski at collabora.com
Thu Jan 19 07:02:36 UTC 2017


 sax/source/fastparser/fastparser.cxx |    4 ++++
 1 file changed, 4 insertions(+)

New commits:
commit 18ae77a065cb8ae6940d4067f6ab7e99a3f74047
Author: Mike Kaganski <mike.kaganski at collabora.com>
Date:   Wed Jan 18 10:16:14 2017 +0300

    Also consider saved exceptions when mbEnableThreads is true
    
    Previously, saved exceptions are only checked in FastSaxParserImpl::parse(),
    which is used in case mbEnableThreads is false (when data in input stream
    is no more than 10000). This patch also enables the same check for the
    other case.
    
    Change-Id: Ie718556b7c01322e30698515ecd331b7ebad4105
    Reviewed-on: https://gerrit.libreoffice.org/33249
    Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
    Tested-by: Mike Kaganski <mike.kaganski at collabora.com>

diff --git a/sax/source/fastparser/fastparser.cxx b/sax/source/fastparser/fastparser.cxx
index 03ea471..420f8c7 100644
--- a/sax/source/fastparser/fastparser.cxx
+++ b/sax/source/fastparser/fastparser.cxx
@@ -811,6 +811,10 @@ void FastSaxParserImpl::parseStream(const InputSource& maStructSource)
             } while (!done);
             xParser->join();
             deleteUsedEvents();
+
+            // callbacks used inside XML_Parse may have caught an exception
+            if( rEntity.maSavedException.hasValue() )
+                rEntity.throwException( mxDocumentLocator, true );
         }
         else
         {


More information about the Libreoffice-commits mailing list