Bug#523271: bloboats: segfault at start up
Raphael Geissert
atomo64 at gmail.com
Wed Apr 15 05:08:49 UTC 2009
On Thursday 09 April 2009 10:25:29 Gonéri Le Bouder wrote:
> On Thu, Apr 09, 2009 at 09:59:19AM -0500, Raphael Geissert wrote:
> Works fine here:
[...]
> I've the
> feeling the problem come from your libgl1-mesa-glx from experimental. Can
> you please upgrade your sysetem.
>
Did that a couple of days ago, no difference.
> > I tried to get the debug symbols of the package from debug.d.n but it
> > they are not available for i386.
>
> It's probably because I built the package on my own machin. Is there
> anything I can do to avoid that?
No, it is unrelated to whether you built the package or a buildd did. I've
already pinged the right person for that.
I rebuilt the package with DEB_BUILD_OPTIONS=nostrip and got a better
backtrace:
(gdb) bt
#0 0xb7f06756 in glViewport () from /usr/lib/libGL.so.1
#1 0x0804d348 in window::OpenWindow (this=0x807c820, w=1024, h=768, b=32,
flags=-2147483646)
at src/window.cpp:59
#2 0x0804ab95 in main (argc=1, argv=Cannot access memory at address 0x5
) at src/main.cpp:211
By the way, like I mentioned to Barry via IRC, the package doesn't have an
un/patch target and doesn't respect the debug and noopt DEB_BUILD_OPTIONS
options; you should fix that.
One of the obvious errors on the code is that while SDL_SetVideoMode takes a
Uint32 for the flags, the code passes an integer which, as soon as
SDL_FULLSCREEN is added, is overflowed, turning into a negative integer.
Attached is the fix for that bug.
While this doesn't fix the segfault it is one bug less (although I expect
many, similar, bugs to be there on the code). What did help get the game's
screen was commenting out the SDL_FULLSCREEN-related line in main.cpp;
although after a few seconds the screen got corrupted and had to SIGTERM it.
This is the backtrace from the code with the attached patch applied:
(gdb) bt
#0 0xb7e13756 in glViewport () from /usr/lib/libGL.so.1
#1 0x0804d348 in window::OpenWindow (this=0x807c820, w=1024, h=768, b=32,
flags=2147483650) at src/window.cpp:59
#2 0x0804ab95 in main (argc=1, argv=Cannot access memory at address 0x5
) at src/main.cpp:211
Cheers,
--
Raphael Geissert - Debian Maintainer
www.debian.org - get.debian.net
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bloboats_uint32.diff
Type: text/x-diff
Size: 1019 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-games-devel/attachments/20090415/09de484f/attachment.diff>
More information about the Pkg-games-devel
mailing list