$Id: nils-mozilla 6405 2003-05-24 15:27:46Z apg $
Mozilla issues a line "###!!! Break: at file nsFrameManager.cpp, line 1004"
which confuses DDD 3.3:
- First, DDD interprets this as a `more' prompt and sends a single space;
- Second, DDD interprets this as GDB output and assumes a program stop there.


GNU DDD 3.3 (i686-pc-linux-gnu)
Copyright (C) 1995-1999 Technische Universität Braunschweig, Germany.
Copyright (C) 1999-2001 Universität Passau, Germany.

Compiled with GCC 2.95.2 19991024 (release), GNU libc 2.1
Requires X11R6, Xt11R6, Motif 1.2 (GNU/LessTif Version 1.2 Release 0.92.6)
Includes XPM 3.4.11, Athena Panner, DDD core
Built 2001-02-12 by Michael Haeusler <haeusler@cuba.fmi.uni-passau.de>.
$  /public/packages/programming/ddd-3.3/bin/ddd --debugger gdb -x /tmp/mozargs18028 dist/bin/mozilla-bin
+  /bin/sh -c 'exec gdb -x /tmp/mozargs18028 -q -fullname '\''dist/bin/mozilla-bin'\'''
#  Hello, world!
#  Opening session "1184e74014000098207374200000068610021"...
#  Running GDB (pid 18041, tty /dev/pts/9)...
#  Current language: C/C++
#  Searching "vsllib/ddd.vsl"...
#  Trying "/home/clstaff/nils/.ddd/vsllib/ddd.vsl"
#  Trying "/public/packages/programming/ddd-3.3/share/ddd-3.3/vsllib/ddd.vsl"
#  Searching "vsllib/ddd.vsl"..."/public/packages/programming/ddd-3.3/share/ddd-3.3/vsllib/ddd.vsl".
#  Creating "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/"...
#  Creating "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/"...done.
#  Copying "/home/clstaff/nils/.ddd/init" to "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/init"...
#  Copying "/home/clstaff/nils/.ddd/init" to "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/init"...done.
#  Copying "/home/clstaff/nils/.ddd/history" to "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/history"...
#  Copying "/home/clstaff/nils/.ddd/history" to "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/history"...done.
#  Saving session in "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/init"...
#  Saving session in "/home/clstaff/nils/.ddd/sessions/1184e74014000098207374200000068610021/init"...done.
<- "(gdb) "
-> "set prompt (gdb) \n"
<- "(gdb) "
-> "set height 0\n"
<- "(gdb) "
-> "set width 0\n"
<- "(gdb) "
-> "set annotate 1\n"
<- "(gdb) "
-> " set verbose off\n"
<- "(gdb) "
-> "info line\n"
<- "No line number information available.\n"
   "(gdb) "
-> "list\n"
<- "1190\t#endif\n"
   "1191\t\n"
   "1192\t  return dosplash;\n"
   "1193\t}\n"
   "1194\t\n"
   "1195\t\n"
   "1196\tint main(int argc, char* argv[])\n"
   "1197\t{\n"
   "1198\t#if defined(XP_UNIX)\n"
   "1199\t  InstallUnixSignalHandlers(argv[0]);\n"
   "(gdb) "
-> "info line\n"
<- "Line 1199 of \"nsAppRunner.cpp\" starts at address 0x8050c31 <main+21> and ends at 0x8050c3b <main+31>.\n"
   "\032\032/export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/nsAppRunner.cpp:1199:37643:beg:0x8050c31\n"
   "(gdb) "
-> "output 4711\n"
<- "4711(gdb) "
-> "show language\n"
<- "The current source language is \"auto; currently c\".\n"
   "(gdb) "
-> "show version\n"
<- "GNU gdb 5.0\n"
   "Copyright 2001 Free Software Foundation, Inc.\n"
   "GDB is free software, covered by the GNU General Public License, and you are\n"
   "welcome to change it and/or distribute copies of it under certain conditions.\n"
   "Type \"show copying\" to see the conditions.\n"
   "There is absolutely no warranty for GDB.  Type \"show warranty\" for details.\n"
   "This GDB was configured as \"i686-pc-linux-gnu\".\n"
   "(gdb) "
-> "pwd\n"
<- "Working directory /export/scratch/nils/mozsrc/mozilla.\n"
   "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "show history filename\n"
<- "The filename in which to record the command history is \"/export/scratch/nils/mozsrc/mozilla/.gdb_history\".\n"
   "(gdb) "
-> "show history size\n"
<- "The size of the command history is 100.\n"
   "(gdb) "
#  Reading file "/export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/nsAppRunner.cpp"...
#  Reading file "/export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/nsAppRunner.cpp"...done.
#  File "/export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/nsAppRunner.cpp" 1292 lines, 41400 characters
#  Setting buttons...
#  Setting buttons...done.
-> "info source\n"
<- "Current source file is nsAppRunner.cpp\n"
   "Compilation directory is /export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/\n"
   "Located in /export/scratch/nils/mozsrc/mozilla/xpfe/bootstrap/nsAppRunner.cpp\n"
   "Contains 1292 lines.\n"
   "Source language is c++.\n"
   "Compiled with stabs debugging format.\n"
   "(gdb) "
-> "info files\n"
<- "Symbols from \"/export/scratch/nils/mozsrc/mozilla/dist/bin/mozilla-bin\".\n"
   "Local exec file:\n"
   "\t`/export/scratch/nils/mozsrc/mozilla/dist/bin/mozilla-bin\', file type elf32-i386.\n"
   "\tEntry point: 0x804b640\n"
   "\t0x080480f4 - 0x08048107 is .interp\n"
   "\t0x08048108 - 0x08048128 is .note.ABI-tag\n"
   "\t0x08048128 - 0x080485e8 is .hash\n"
   "\t0x080485e8 - 0x08049098 is .dynsym\n"
   "\t0x08049098 - 0x0804a9e8 is .dynstr\n"
   "\t0x0804a9e8 - 0x0804ab3e is .gnu.version\n"
   "\t0x0804ab40 - 0x0804ab80 is .gnu.version_r\n"
   "\t0x0804ab80 - 0x0804ac80 is .rel.got\n"
   "\t0x0804ac80 - 0x0804afa8 is .rel.plt\n"
   "\t0x0804afa8 - 0x0804afd7 is .init\n"
   "\t0x0804afd8 - 0x0804b638 is .plt\n"
   "\t0x0804b640 - 0x08059ddf is .text\n"
   "\t0x08059de0 - 0x08059dfa is .fini\n"
   "\t0x08059e00 - 0x0805cdf2 is .rodata\n"
   "\t0x0805de00 - 0x0805e440 is .data\n"
   "\t0x0805e440 - 0x0805e444 is .eh_frame\n"
   "\t0x0805e444 - 0x0805e44c is .ctors\n"
   "\t0x0805e44c - 0x0805e454 is .dtors\n"
   "\t0x0805e454 - 0x0805e674 is .got\n"
   "\t0x0805e674 - 0x0805e774 is .dynamic\n"
   "\t0x0805e774 - 0x0805e7c4 is .bss\n"
   "(gdb) "
-> "info program\n"
<- "The program being debugged is not being run.\n"
   "(gdb) "
-> "set confirm off\n"
<- "(gdb) "
-> "source /tmp/file3mR9aW\n"
<- "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "# reset\n"
<- "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
   "(gdb) "
-> "display\n"
<- "(gdb) "
-> "info display\n"
<- "There are no auto-display expressions now.\n"
   "(gdb) "
-> "set environment TERM dumb\n"
<- "(gdb) "
-> "info files\n"
<- "Symbols from \"/export/scratch/nils/mozsrc/mozilla/dist/bin/mozilla-bin\".\n"
   "Local exec file:\n"
   "\t`/export/scratch/nils/mozsrc/mozilla/dist/bin/mozilla-bin\', file type elf32-i386.\n"
   "\tEntry point: 0x804b640\n"
   "\t0x080480f4 - 0x08048107 is .interp\n"
   "\t0x08048108 - 0x08048128 is .note.ABI-tag\n"
   "\t0x08048128 - 0x080485e8 is .hash\n"
   "\t0x080485e8 - 0x08049098 is .dynsym\n"
   "\t0x08049098 - 0x0804a9e8 is .dynstr\n"
   "\t0x0804a9e8 - 0x0804ab3e is .gnu.version\n"
   "\t0x0804ab40 - 0x0804ab80 is .gnu.version_r\n"
   "\t0x0804ab80 - 0x0804ac80 is .rel.got\n"
   "\t0x0804ac80 - 0x0804afa8 is .rel.plt\n"
   "\t0x0804afa8 - 0x0804afd7 is .init\n"
   "\t0x0804afd8 - 0x0804b638 is .plt\n"
   "\t0x0804b640 - 0x08059ddf is .text\n"
   "\t0x08059de0 - 0x08059dfa is .fini\n"
   "\t0x08059e00 - 0x0805cdf2 is .rodata\n"
   "\t0x0805de00 - 0x0805e440 is .data\n"
   "\t0x0805e440 - 0x0805e444 is .eh_frame\n"
   "\t0x0805e444 - 0x0805e44c is .ctors\n"
   "\t0x0805e44c - 0x0805e454 is .dtors\n"
   "\t0x0805e454 - 0x0805e674 is .got\n"
   "\t0x0805e674 - 0x0805e774 is .dynamic\n"
   "\t0x0805e774 - 0x0805e7c4 is .bss\n"
   "(gdb) "
-> "info program\n"
<- "The program being debugged is not being run.\n"
   "(gdb) "
#  Opening session "1184e74014000098207374200000068610021"...done.
#  Welcome to DDD 3.3 "Blues by Night" (i686-pc-linux-gnu)
-> "help detach\n"
<- "Detach a process or file previously attached.\n"
   "If a process, it is no longer traced, and it continues its execution.  If\n"
   "you were debugging a file, the file is closed and gdb no longer accesses it.\n"
   "(gdb) "
-> "help run\n"
<- "Start debugged program.  You may specify arguments to give it.\n"
   "Args may include \"*\", or \"[...]\"; they are expanded using \"sh\".\n"
   "Input and output redirection with \">\", \"<\", or \">>\" are also allowed.\n"
   "\n"
   "With no arguments, uses arguments last specified (with \"run\" or \"set args\").\n"
   "To cancel previous arguments and run with no arguments,\n"
   "use \"set args\" without arguments.\n"
   "(gdb) "
-> "help step\n"
<- "Step program until it reaches a different source line.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help stepi\n"
<- "Step one instruction exactly.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help next\n"
<- "Step program, proceeding through subroutine calls.\n"
   "Like the \"step\" command as long as subroutine calls do not happen;\n"
   "when they do, the call is treated as one instruction.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help nexti\n"
<- "Step one instruction, but proceed through subroutine calls.\n"
   "Argument N means do this N times (or till program stops for another reason).\n"
   "(gdb) "
-> "help until\n"
<- "Execute until the program reaches a source line greater than the current\n"
   "or a specified line or address or function (same args as break command).\n"
   "Execution will also stop upon exit from the current stack frame.\n"
   "(gdb) "
-> "help finish\n"
<- "Execute until selected stack frame returns.\n"
   "Upon return, the value returned is printed and put in the value history.\n"
   "(gdb) "
-> "help cont\n"
<- "Continue program being debugged, after signal or breakpoint.\n"
   "If proceeding from breakpoint, a number N may be used as an argument,\n"
   "which means to set the ignore count of that breakpoint to N - 1 (so that\n"
   "the breakpoint won\'t break until the Nth time it is reached).\n"
   "(gdb) "
-> "help signal\n"
<- "Continue program giving it signal specified by the argument.\n"
   "An argument of \"0\" means continue program without giving it a signal.\n"
   "(gdb) "
-> "help kill\n"
<- "Kill execution of program being debugged.\n"
   "(gdb) "
-> "help up\n"
<- "Select and print stack frame that called this one.\n"
   "An argument says how many frames up to go.\n"
   "(gdb) "
-> "help down\n"
<- "Select and print stack frame called by this one.\n"
   "An argument says how many frames down to go.\n"
   "(gdb) "
-> "set environment TERM dumb\n"
<- "(gdb) "
-> "run\n"
<- "[New Thread 1024 (runnable)]\n"
<- "###!!! ASSERTION: frame already has posted event: \'!*FindPostedEventFor(aFrame)\', file nsFrameManager.cpp, line 1004\n"
<- "###!!! Break: at file nsFrameManager.cpp, line 1004"
-> " "
<- "\n"
   "\a###!!! ASSERTION: frame already has posted event: \'!*FindPostedEventFor(aFrame)\', file nsFrameManager.cpp, line 1004\n"
   "###!!! Break: at file nsFrameManager.cpp, line 1004\n"
   "\a"
<- "\n"
<- "Program received signal SIGSEGV, Segmentation fault.\n"
<- "[Switching to Thread 1024 (runnable)]\n"
<- "0x41269071 in nsCSSFrameConstructor::CantRenderReplacedElement (this=0x42334250, aPresShell=0x420f57f8, aPresContext=0x420f3f20, aFrame=0x4257aaf8) at nsCSSFrameConstructor.cpp:10085\n"
<- "\032\032/export/scratch/nils/mozsrc/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp:10085:386152:beg:0x41269071\n"
<- "Current language:  auto; currently c++\n"
<- "(gdb) "
-> "info breakpoints\n"
<- "No breakpoints or watchpoints.\n"
<- "(gdb) "
#  Reading file "/export/scratch/nils/mozsrc/mozilla/nsCSSFrameConstructor.cpp"...
#  Reading file "/export/scratch/nils/mozsrc/mozilla/nsCSSFrameConstructor.cpp"...No such file or directory.
-> "info source\n"
<- "Current source file is nsCSSFrameConstructor.cpp\n"
<- "Compilation directory is /export/scratch/nils/mozsrc/mozilla/layout/html/style/src/\n"
<- "Located in /export/scratch/nils/mozsrc/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp\n"
<- "Contains 12979 lines.\n"
<- "Source language is c++.\n"
<- "Compiled with stabs debugging format.\n"
<- "(gdb) "
#  Reading file "nsCSSFrameConstructor.cpp" from GDB...
-> "list nsCSSFrameConstructor.cpp:1,1000000\n"
<- "1\t/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-\n"
   "12979\t\n"
   "(gdb) "
#  Reading file "nsCSSFrameConstructor.cpp" from GDB...done.
#  Source "nsCSSFrameConstructor.cpp" (from GDB) 12979 lines, 504189 characters
-> "info source\n"
<- "Current source file is nsCSSFrameConstructor.cpp\n"
   "Compilation directory is /export/scratch/nils/mozsrc/mozilla/layout/html/style/src/\n"
   "Located in /export/scratch/nils/mozsrc/mozilla/layout/html/style/src/nsCSSFrameConstructor.cpp\n"
   "Contains 12979 lines.\n"
   "Source language is c++.\n"
   "Compiled with stabs debugging format.\n"
   "(gdb) "
-> "where\n"
<- "#0  0x41269071 in nsCSSFrameConstructor::CantRenderReplacedElement (this=0x42334250, aPresShell=0x420f57f8, aPresContext=0x420f3f20, aFrame=0x4257aaf8) at nsCSSFrameConstructor.cpp:10085\n"
<- "#1  0x41434cd8 in StyleSetImpl::CantRenderReplacedElement (this=0x42334c38, aPresContext=0x420f3f20, aFrame=0x4257aaf8) at nsStyleSet.cpp:1302\n"
<- "#2  0x410e54fb in FrameManager::HandlePLEvent (aEvent=0x4236d570) at nsFrameManager.cpp:956\n"
<- "#3  0x400ffcee in PL_HandleEvent (self=0x4236d570) at plevent.c:576\n"
<- "#4  0x400ff4f6 in PL_ProcessPendingEvents (self=0x80a7728) at plevent.c:509\n"
<- "#5  0x40101428 in nsEventQueueImpl::ProcessPendingEvents (this=0x80a7700) at nsEventQueue.cpp:361\n"
<- "#6  0x406c6a03 in event_processor_callback (data=0x80a7700, source=8, condition=GDK_INPUT_READ) at nsAppShell.cpp:158\n"
<- "#7  0x406c6c05 in our_gdk_io_invoke (source=0x81ce530, condition=G_IO_IN, data=0x81e5428) at nsAppShell.cpp:58\n"
<- "#8  0x4087faca in g_io_unix_dispatch () from /usr/lib/libglib-1.2.so.0\n"
<- "#9  0x40881186 in g_main_dispatch () from /usr/lib/libglib-1.2.so.0\n"
<- "#10 0x40881751 in g_main_iterate () from /usr/lib/libglib-1.2.so.0\n"
<- "#11 0x408818f1 in g_main_run () from /usr/lib/libglib-1.2.so.0\n"
<- "#12 0x407a95b9 in gtk_main () from /usr/lib/libgtk-1.2.so.0\n"
<- "#13 0x406c69ca in nsAppShell::Run (this=0x8096970) at nsAppShell.cpp:350\n"
<- "#14 0x405e32d4 in nsAppShellService::Run (this=0x809ed08) at nsAppShellService.cpp:407\n"
<- "#15 0x080501ce in main1 (argc=1, argv=0xbfffef74, nativeApp=0x0) at nsAppRunner.cpp:978\n"
<- "#16 0x08050d1f in main (argc=1, argv=0xbfffef74) at nsAppRunner.cpp:1270\n"
<- "#17 0x4030c9cb in __libc_start_main (main=0x8050c1c <main>, argc=1, argv=0xbfffef74, init=0x804afa8 <_init>, fini=0x8059de0 <_fini>, rtld_fini=0x4000aea0 <_dl_fini>, stack_end=0xbfffef6c) at ../sysdeps/generic/libc-start.c:92\n"
<- "(gdb) "
#  Deleting session "1184e74014000098207374200000068610021"...
#  Current session is [none].
#  Deleting session "1184e74014000098207374200000068610021"...done.
-> "quit\n"
#  Running GDB (pid 18041, tty /dev/pts/9)...Exit 0.
#  Saving history in "/home/clstaff/nils/.ddd/history"...
#  Saving history in "/home/clstaff/nils/.ddd/history"...done.
#  Thanks for using DDD 3.3!
