On Thu, 2010-12-16 at 12:57 +0100, Thomas Klausner wrote:
The build on NetBSD currently fails with:
Entering /disk/2/archive/libreoffice/sc/qa/unit
----------------------------------------------------------
- start unit test #1 on library ../../unxbsdx3.pro/lib/libqa_unit.so
----------------------------------------------------------
: &&
LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}/disk/2/archive/libreoffice/clone/calc/sc/unxbsdx3.pro/lib:/disk/2/archive/libreoffice/solver/330/unxbsdx3.pro/lib
/disk/2/archive/libreoffice/solver/330/unxbsdx3.pro/bin/cppunittester
../../unxbsdx3.pro/lib/libqa_unit.so -headless -invisible \
-env:UNO_SERVICES=file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/services.rdb
\
-env:UNO_TYPES="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/types.rdb
file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/udkapi.rdb"
\
-env:OOO_BASE_DIR="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
\
-env:BRAND_BASE_DIR="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
\
-env:UNO_USER_PACKAGES_CACHE="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
OK (3)
/bin/bash: line 1: 21530 Segmentation fault (core dumped)
LD_LIBRARY_PATH=${LD_LIBRARY_PATH+${LD_LIBRARY_PATH}:}/disk/2/archive/libreoffice/clone/calc/sc/unxbsdx3.pro/lib:/disk/2/archive/libreoffice/solver/330/unxbsdx3.pro/lib
/disk/2/archive/libreoffice/solver/330/unxbsdx3.pro/bin/cppunittester
../../unxbsdx3.pro/lib/libqa_unit.so -headless -invisible
-env:UNO_SERVICES=file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/services.rdb
-env:UNO_TYPES="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/types.rdb
file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit/udkapi.rdb"
-env:OOO_BASE_DIR="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
-env:BRAND_BASE_DIR="file:///disk/2/archive/libreoffice/clone/calc/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
-env:UNO_USER_PACKAGES_CACHE="file:///disk/2/archive/libreoffice/clone/!
cal
c/sc/qa/unit/../../unxbsdx3.pro/misc/qa_unit"
Is this still broken for you. Looking at this, it appears to be a crash
on exit seeing as it was able to print the "tests passed" line of OK.
One horrific temporary hack to test a theory would be to call _exit to
skip calling the massive dtor chain which OOo builds up. Though that's
not a cure, just a temp hack, but maybe it'll help isolate this.
C.
diff --git a/sal/inc/sal/main.h b/sal/inc/sal/main.h
index bf7a828..65ead5d 100644
--- a/sal/inc/sal/main.h
+++ b/sal/inc/sal/main.h
@@ -41,6 +41,19 @@ extern "C" {
void SAL_CALL sal_detail_initialize(int argc, char ** argv);
void SAL_CALL sal_detail_deinitialize();
+#if defined(AIX) || defined(NETBSD)
+//*Hurl*, *Puke*, temp fix only, will
+//cause other weirdness eventually
+# define BROKEN_SHUTDOWN
+# include <unistd.h>
+#endif
+
+#ifdef BROKEN_SHUTDOWN
+# define MAINRET(x) _exit(x)
+#else
+# define MAINRET(x) return x
+#endif
+
#define SAL_MAIN_WITH_ARGS_IMPL \
int SAL_CALL main(int argc, char ** argv) \
{ \
@@ -48,7 +61,7 @@ int SAL_CALL main(int argc, char ** argv) \
sal_detail_initialize(argc, argv); \
ret = sal_main_with_args(argc, argv); \
sal_detail_deinitialize(); \
- return ret; \
+ MAINRET(ret); \
}
#define SAL_MAIN_IMPL \
@@ -58,7 +71,7 @@ int SAL_CALL main(int argc, char ** argv) \
sal_detail_initialize(argc, argv); \
ret = sal_main(); \
sal_detail_deinitialize(); \
- return ret; \
+ MAINRET(ret); \
}
/* Definition macros for CRT entries */
Context
- Re: [Libreoffice] segfault in libqa_unit.so test · Caolán McNamara
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.