Tue 13 Dec 2005 04:17:55 AM UTC, original submission:
This bug was reported on IRC by covracer, I've been able to reproduce it.
Starting the tutorial then trying to print a screenshot with printscreen causes the game to crash. This bug doesn't seem to appear with all maps, may not appear when the game is installed in /usr/games/bin or /, and might not appear unless you wait a minute or so before hitting printscreen.
Running in gdb, I got the following:
$ gdb ./src/glob2
GNU gdb 6.3.90_20051119-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...Using host libthread_db library "/lib/tls/libthread_db.so.1".
(gdb) run
Starting program: /home/andrew/glob2/CVS-0.8.17/glob2/src/glob2
[Thread debugging using libthread_db enabled]
[New Thread -1223153952 (LWP 26357)]
[New Thread -1223910480 (LWP 26360)]
[New Thread -1262564432 (LWP 26361)]
[New Thread -1270953040 (LWP 26362)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1223153952 (LWP 26357)]
0xb7d53ef8 in _ConvertX86p32_24RGB888 () from /usr/lib/libSDL-1.2.so.0
(gdb) bt
#0 0xb7d53ef8 in _ConvertX86p32_24RGB888 () from /usr/lib/libSDL-1.2.so.0
#1 0x00000320 in ?? ()
#2 0xbfc322dc in ?? ()
#3 0x08ea0330 in ?? ()
#4 0x082bf4e0 in ?? ()
#5 0xbfc32298 in ?? ()
#6 0xbfc32298 in ?? ()
#7 0xb7d5a6b4 in ?? () from /usr/lib/libSDL-1.2.so.0
#8 0x08ea8810 in ?? ()
#9 0x082cac40 in ?? ()
#10 0xbfc322dc in ?? ()
#11 0xbfc32318 in ?? ()
#12 0xb7d0f38e in SDL_RLESurface () from /usr/lib/libSDL-1.2.so.0
Previous frame inner to this frame (corrupt stack?)
While covracer got something like this:
[Switching to Thread -1224821040 (LWP 24882)]
0xb7d7e049 in SDL_CalculateBlitN () from /usr/lib/libSDL-1.2.so.0
(backtrace)
#0 0xb7d7e049 in SDL_CalculateBlitN () from /usr/lib/libSDL-1.2.so.0
#1 0xb7d6fcc6 in SDL_CalculateBlit () from /usr/lib/libSDL-1.2.so.0
#2 0xb7d86df3 in SDL_LowerBlit () from /usr/lib/libSDL-1.2.so.0
#3 0xb7d8393b in SDL_SaveBMP_RW () from /usr/lib/libSDL-1.2.so.0
#4 0x08184c0e in non-virtual thunk to std::basic_iostream<char, std::char_traits<char> >::~basic_iostream() ()
#5 0x080b768e in std::__iterator_category<char const*> ()
#6 0x080b5a04 in std::__iterator_category<char const*> ()
#7 0x080b3c68 in std::__iterator_category<char const*> ()
#8 0x0809f296 in virtual thunk to std::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream() ()
#9 0x080d13b2 in std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<std::string const, std::vector<std::string, std::allocator<std::string> > >, std::string> ()
#10 0x080d1b2f in std::__uninitialized_copy_aux<__gnu_cxx::__normal_iterator<std::string const, std::vector<std::string, std::allocator<std::string> > >, std::string> ()
#11 0xb7b05f2c in __libc_start_main () from /lib/libc.so.6
#12 0x0804f651 in ?? ()
(and no complaint about a corrupt stack)
Is it possible that this is an internal SDL bug? Also, which file/function is the printscreen code in? I could put a breakpoint into the code and track down the last line successfully executed.
|