[Libreoffice-commits] .: 2 commits - desktop/source unoxml/source wizards/com

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Mon Sep 24 08:53:39 PDT 2012


 desktop/source/app/main.c               |   14 ++++++++++++++
 unoxml/source/rdf/librdf_repository.cxx |    6 ++++++
 wizards/com/sun/star/wizards/remote.py  |    8 --------
 3 files changed, 20 insertions(+), 8 deletions(-)

New commits:
commit d68113f3229d0ec8c84f77dcac3b64a3fd7e03e4
Author: Michael Stahl <mstahl at redhat.com>
Date:   Mon Sep 24 17:29:21 2012 +0200

    soffice.bin: add a hack to detect calls to xmlCleanupParser
    
    xmlCleanupParser frees libxml2's global variables, accessing those later
    on leads to hard to debug crashes.  Because libxml2 is used indirectly
    by lots of different components, nobody is allwed to free its globals.
    
    Change-Id: I05381d3dada217db44e96445d6f6d63014f57241

diff --git a/desktop/source/app/main.c b/desktop/source/app/main.c
index ae016b4..c18fabd 100644
--- a/desktop/source/app/main.c
+++ b/desktop/source/app/main.c
@@ -25,4 +25,18 @@ SAL_IMPLEMENT_MAIN() {
     return soffice_main();
 }
 
+#ifdef DBG_UTIL
+#ifdef __gnu_linux__
+#include <stdio.h>
+#include <stdlib.h>
+
+/* HACK: detect calls to xmlCleanupParser, which causes hard to debug crashes */
+__attribute__ ((visibility("default"))) void xmlCleanupParser(void)
+{
+    fprintf(stderr, "\n*** ERROR: DO NOT call xmlCleanupParser()\n\n");
+    abort();
+}
+#endif
+#endif
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/unoxml/source/rdf/librdf_repository.cxx b/unoxml/source/rdf/librdf_repository.cxx
index 733b313..1e98ee5 100644
--- a/unoxml/source/rdf/librdf_repository.cxx
+++ b/unoxml/source/rdf/librdf_repository.cxx
@@ -127,7 +127,13 @@ bool isInternalContext(librdf_node *i_pNode) throw ()
 //       so they need to be wrapped to be usable with boost::shared_ptr.
 static void safe_librdf_free_world(librdf_world *const world)
 {
+#if 1
+    (void)world; // leak it
+#else
+    // disable this for now: it calls xmlCleanupParser, which now aborts
+    // (see desktop/source/app/main.c)
     if (world) { librdf_free_world(world); }
+#endif
 }
 static void safe_librdf_free_model(librdf_model *const model)
 {
commit e5d64a0c5c5a49c55f51a1fcfed18bbb0436cc56
Author: Xisco Fauli <anistenis at gmail.com>
Date:   Mon Sep 24 17:01:08 2012 +0200

    remove remote.py, which was intended to be removed...
    
    ...in cf939a858b625982ee5c361b88c5121648859dd0 but apparently the
    removal had an accident.
    
    Change-Id: Ifea1deebaf8c49eb72aa688f2b161f13b6a25844

diff --git a/wizards/com/sun/star/wizards/remote.py b/wizards/com/sun/star/wizards/remote.py
deleted file mode 100755
index db54e82..0000000
--- a/wizards/com/sun/star/wizards/remote.py
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env python
-
-import uno
-from fax.FaxWizardDialogImpl import FaxWizardDialogImpl
-import sys
-
-if __name__ == "__main__":
-	FaxWizardDialogImpl.main(sys.argv)


More information about the Libreoffice-commits mailing list