[dev] Need help debugging OOo with gdb
I have a reproducible segfault I'd like to examine with GDB, but I have a problem. When I run the program without the debugger I get the message CO # CO # An unexpected error has been detected by HotSpot Virtual Machine: CO # CO # SIGSEGV (0xb) at pc=0x9b15805d, pid=15855, tid=2610363312 CO # CO # Java VM: Java HotSpot(TM) Client VM (1.5.0_11-b03 mixed mode, sharing) CO # Problematic frame: CO # C [libscriptframe.so+0x5a05d] _ZN17browsenodefactory17DefaultBrowseNode7getNameEv+0x29 [...] I have replaced libscriptframe.so with a debug build. Now I attach gdb to the soffice.bin process and run the Java program I use to trigger the bug. However when GDB catches the segfault, it is unable to decode the call stack. I would have expected it to break in DefaultBrowseNode::getName() which the above message identifies as the location where the segfault happens. What I am I doing wrong? It seems to me as if the Java VM is interfering with my debugging (since apparently it catches segfaults itself to output messages such as the above). What do I have to do to have GDB correctly catch the segfault (if that's at all possible)? I'm unfamiliar with debugging C++/Java hybrids. Matthias - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [dev] Need help debugging OOo with gdb
Matthias B. wrote: I have a reproducible segfault I'd like to examine with GDB, but I have a problem. When I run the program without the debugger I get the message CO # CO # An unexpected error has been detected by HotSpot Virtual Machine: CO # CO # SIGSEGV (0xb) at pc=0x9b15805d, pid=15855, tid=2610363312 CO # CO # Java VM: Java HotSpot(TM) Client VM (1.5.0_11-b03 mixed mode, sharing) CO # Problematic frame: CO # C [libscriptframe.so+0x5a05d] _ZN17browsenodefactory17DefaultBrowseNode7getNameEv+0x29 [...] I have replaced libscriptframe.so with a debug build. Now I attach gdb to the soffice.bin process and run the Java program I use to trigger the bug. However when GDB catches the segfault, it is unable to decode the call stack. I would have expected it to break in DefaultBrowseNode::getName() which the above message identifies as the location where the segfault happens. What I am I doing wrong? It seems to me as if the Java VM is interfering with my debugging (since apparently it catches segfaults itself to output messages such as the above). What do I have to do to have GDB correctly catch the segfault (if that's at all possible)? I'm unfamiliar with debugging C++/Java hybrids. Bad luck. Your code (libscriptframe.so) is obviously part of an OOo Extension you just installed. Code for freshly installed extensions is not executed within the soffice.bin process, but in a spawned uno.bin process (the CO prefixes to the output are added by the OOo code that controls the spawned process). It should work if you restart OOo after installing the extension (as then the code will be executed directly in the soffice.bin process). -Stephan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [dev] Need help debugging OOo with gdb
On 7/3/07, Stephan Bergmann [EMAIL PROTECTED] wrote: Bad luck. Your code (libscriptframe.so) is obviously part of an OOo Extension you just installed. You're mistaken. It's part of the scripting framework which is a regular part of OOo. The source code is in OOF680_m18/scripting/source/provider/ Matthias - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]