Hi there,
trying to debug an awkward error on MacOSX when ooRexx is created from within a
64-bit Java thread,
initialized by Apache OpenOffice (AOO).
Preliminary comment: 64-bit ooRexx, Java and BSF4ooRexx work stand-alone
without any problems. It is
also possible to run ooRexx scripts using the AOO jre-libraries to interact
with AOO.
The problem occurs when having AOO dispatch ooRexx scripts ("macros") via
64-bit Java on MacOSX.
(The same scenario works flawlessly e.g. on 64-bit Linux and on 32-bit Linux
and Windows AOO; there
is no 64-bit AOO for Windows yet.)
Here are the relevant snippets from the (impressively detailed) crash report on
MacOSX:
Process: soffice [92432]
Path: /Applications/OpenOffice Beta.app/Contents/MacOS/soffice
Identifier: org.openoffice.script
Version: 4.1.0 (???)
Code Type: *X86-64 (Native)*
Parent Process: launchd [254]
Responsible: soffice [92432]
User ID: 501
Date/Time: 2014-03-24 20:44:16.238 +0100
OS Version: Mac OS X 10.9.2 (13C64)
Report Version: 11
Anonymous UUID: E2667C29-B337-0D61-D55C-512C7C88AD32
Sleep/Wake UUID: 5C125262-4B0C-411C-A290-DF7A9D64F65B
*Crashed Thread: 35 Java: AWT-EventQueue-0*
*Exception Type: EXC_BAD_ACCESS (SIGSEGV)**
**Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000*
VM Regions Near 0:
-->
__TEXT 000000010209e000-000000010209f000 [ 4K]
r-x/rwx SM=COW
/Applications/OpenOffice Beta.app/Contents/MacOS/soffice
Application Specific Information:
Java information:
Exception type: Bus Error (0xa) at pc=7fff8d3a1732
*Java VM: Java HotSpot(TM) 64-Bit Server VM (20.65-b04-462 mixed mode
macosx-amd64)*
... cut ...
Thread 35 Crashed:: Java: AWT-EventQueue-0
0 libsystem_c.dylib 0x00007fff8d3a1732 *strlen *+ 18
1 *librexx.4.dylib *0x000000011ee56ea9
*SysFileSystem::searchPath(char
const*, char const*, char*) *+ 41 (SysFileSystem.cpp:520)*
**2 librexx.4.dylib *0x000000011ee56ea9
*SysFileSystem::searchPath(char
const*, char const*, char*) *+ 41 (SysFileSystem.cpp:520)*
**3 librexx.4.dylib *0x000000011ee56dbe
*SysFileSystem::primitiveSearchName(char const*, char const*, char const*,
char*) *+ 270
(SysFileSystem.cpp:449)*
**4 librexx.4.dylib *0x000000011ee55ab6
*SystemInterpreter::loadImage(char**, unsigned long*) *+ 102
(FileSystem.cpp:154)*
**5 librexx.4.dylib *0x000000011ee1de6a
*RexxMemory::restoreImage() *+ 58
(RexxMemory.cpp:813)*
**6 librexx.4.dylib *0x000000011ee1dd97
*RexxMemory::initialize(bool) *+ 839
(RexxMemory.cpp:202)*
**7 librexx.4.dylib *0x000000011ee5da62
*Interpreter::startInterpreter(Interpreter::InterpreterStartupMode) *+ 66
(Interpreter.cpp:135)*
**8 librexx.4.dylib *0x000000011ee5de9d
*Interpreter::createInterpreterInstance(RexxOption*) + 45
(SysSemaphore.hpp:82)**
**9 librexx.4.dylib *0x000000011ee5de18
*Interpreter::createInstance(RexxInstance_*&, RexxThreadContext_*&,
RexxOption*) *+ 24
(Interpreter.cpp:261)*
**10 librexx.4.dylib *0x000000011edf98d9
*RexxCreateInterpreter* + 9
(InterpreterAPI.cpp:382)*
**11 libBSF4ooRexx.dylib 0x0000000109687178
Java_org_rexxla_bsf_engines_rexx_RexxAndJava_jniRexxCreateInterpreterInstance
*+ 2536
12 ??? 0x0000000115741eee 0 + 4654898926
13 ??? 0x00000001157369b3 0 + 4654852531
14 ??? 0x00000001157369b3 0 + 4654852531
15 ??? 0x0000000115736e8d 0 + 4654853773
16 ??? 0x0000000115731438 0 + 4654830648
17 libclient64.dylib 0x0000000114f01ef4 0x114e6b000 +
618228
18 libclient64.dylib 0x0000000114f01cb8 0x114e6b000 +
617656
19 libclient64.dylib 0x0000000114f0d427 JVM_DoPrivileged +
1037
20 libjvmlinkage.dylib 0x000000011557211d JVM_DoPrivileged +
93
... cut ...
My wild guess at the moment is that AOO 64-Bit on MacOSX somehow (memory?)
restricts (maybe native
code loaded via) Java.
It seems that RexxCreateInterpreter() is called successfully which in turn does
all sorts of
initializations.
What could be the reason that a crash occurs either in
SysFileSystem::searchPath(), if the crash
occurs there? Any ideas, wild guesses, speculations of any sort?
Thankful for any thoughts, hints and advice!
---rony
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel