LINUX: Switching fullscreen/windowed error

Archives Forums/BlitzMax Bug Reports/LINUX: Switching fullscreen/windowed error

anawiki(Posted 2007) [#1]
Hi
My game runs well on linux in fullscreen or windowed mode, but there is one problem. If I try to switch from Full to Window of vice versa it randomly crashes. Sometimes I can switch 5 times back and forth without a problem, sometimes it crashes after the first switch. Here's what it printed:

Building Runes of Avalon full
Compiling:Runes of Avalon full.bmx
flat assembler version 1.64
6 passes, 0.5 seconds, 603879 bytes.
Linking:Runes of Avalon full
Executing:Runes of Avalon full
/usr/bin/ld: warning: libstdc++.so.6, needed by /usr/lib/libGLU.so, may conflict with libstdc++.so.5
appstub.linux signal handler 11*** glibc detected *** /home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full: free(): invalid pointer: 0x0a0ef798 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7bca7cd]
/lib/tls/i686/cmov/libc.so.6(cfree+0x90)[0xb7bcde30]
/usr/lib/libX11.so.6(XFree+0x1d)[0xb7ebddbd]
/usr/lib/libGL.so.1(__glXFreeContext+0x64)[0xb7e421d4]
/usr/lib/libGL.so.1[0xb7e4231b]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8102d23]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8102dd2]
/lib/tls/i686/cmov/libc.so.6(exit+0xe9)[0xb7b8f9d9]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8105c37]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8105b17]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x819ec4e]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full(ftell+0x118)[0x804d2c0]
[0xffffe420]
/usr/lib/dri/r200_dri.so(driDestroyTextureObject+0x49)[0xb78308f9]
/usr/lib/dri/r200_dri.so[0xb78441eb]
/usr/lib/dri/r200_dri.so(_mesa_DeleteTextures+0x26b)[0xb78c3e4b]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8183f4e]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x810857e]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x81060e3]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x81061f6]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x810854d]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8195891]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x816fb2d]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x816f339]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x81966bf]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x81964b0]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x815d139]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8160368]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x815fb97]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x8131c4e]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x812ac9d]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x810a2fc]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x81095a9]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full[0x804d385]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc)[0xb7b78ebc]
/home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full(ftell+0x49)[0x804d1f1]
======= Memory map: ========
08048000-081bf000 r-xp 00000000 16:41 2771592 /home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full
081bf000-081e6000 rwxp 00177000 16:41 2771592 /home/roman/BlitzMax118_Linux/RunesOfAvalonLinux/Runes of Avalon full
081e6000-0c18d000 rwxp 081e6000 00:00 0 [heap]
a71ef000-aa48e000 rwxp a71ef000 00:00 0
aa598000-aa699000 rwxp aa598000 00:00 0
aa827000-aae2a000 rwxp aa827000 00:00 0
ab02c000-ab42d000 rwxp ab02c000 00:00 0
ab48f000-ab8db000 rwxp ab48f000 00:00 0
ab988000-aba35000 rwxp ab988000 00:00 0
abae2000-abb96000 rwxp abae2000 00:00 0
abc4a000-abcf5000 rwxp abc4a000 00:00 0
abda0000-abe07000 rwxp abda0000 00:00 0
abe6f000-abef4000 rwxp abe6f000 00:00 0
abf7a000-ac039000 rwxp abf7a000 00:00 0
ac05e000-ac153000 rwxp ac05e000 00:00 0
ac1ae000-ac203000 rwxp ac1ae000 00:00 0
ac259000-ac32f000 rwxp ac259000 00:00 0
ac405000-ac565000 rwxp ac405000 00:00 0
ac5ab000-ac5ef000 rwxp ac5ab000 00:00 0
ac5f5000-ac6c5000 rwxp ac5f5000 00:00 0
ac6c6000-ac740000 rwxp ac6c6000 00:00 0
ac7bb000-ac866000 rwxp ac7bb000 00:00 0
ac868000-ac99b000 rwxp ac868000 00:00 0
ac9aa000-acab0000 rwxp ac9aa000 00:00 0
acb3b000-acd10000 rwxp acb3b000 00:00 0
acd34000-acdc8000 rwxp acd34000 00:00 0
ace5d000-ad1a5000 rwxp ace5d000 00:00 0
ad1c8000-ad281000 rwxp ad1c8000 00:00 0
ad33a000-ad5e7000 rwxp ad33a000 00:00 0
ad5ed000-ad6e9000 rwxp ad5ed000 00:00 0
ad6ea000-ad720000 rwxp ad6ea000 00:00 0
ad720000-ad721000 ---p ad720000 00:00 0
ad721000-adf21000 rwxp ad721000 00:00 0
adf57000-ae358000 rwxp adf57000 00:00 0
ae3bb000-ae758000 rwxp ae3bb000 00:00 0
ae759000-ae8b9000 rwxp ae759000 00:00 0
ae8b9000-ae8c0000 r-xp 00000000 16:41 2016794 /usr/lib/libXrender.so.1.3.0
ae8c0000-ae8c1000 rwxp 00006000 16:41 2016794 /usr/lib/libXrender.so.1.3.0
ae8c1000-ae8c9000 r-xp 00000000 16:41 2016764 /usr/lib/libXcursor.so.1.0.2
ae8c9000-ae8ca000 rwxp 00007000 16:41 2016764 /usr/lib/libXcursor.so.1.0.2
ae8d4000-aedf2000 rwxp ae8d4000 00:00 0
aef00000-aef21000 rwxp aef00000 00:00 0
aef21000-af000000 ---p aef21000 00:00 0
af0c2000-af5a2000 rwxs e0302000 00:0d 16442 /dev/dri/card0
af5a2000-af7a2000 rwxs e0102000 00:0d 16442 /dev/dri/card0
af7a2000-af7b2000 r-xs e5000000 00:0d 16442 /dev/dri/card0
af7b2000-b77b2000 rwxs d0000000 00:0d 16442 /dev/dri/card0
b77b2000-b77d0000 r-xp 00000000 16:41 2016953 /usr/lib/libexpat.so.1.0.0
b77d0000-b77d2000 rwxp 0001d000 16:41 2016953 /usr/lib/libexpat.so.1.0.0
b77d2000-b7a12000 r-xp 00000000 16:41 2018106 /usr/lib/dri/r200_dri.so
b7a12000-b7a22000 rwxp 00240000 16:41 2018106 /usr/lib/dri/r200_dri.so
b7a22000-b7a49000 rwxp b7a22000 00:00 0
b7a49000-b7a54000 r-xp 00000000 16:41 1212480 /lib/libgcc_s.so.1
b7a54000-b7a55000 rwxp 0000a000 16:41 1212480 /lib/libgcc_s.so.1
b7a55000-b7b34000 r-xp 00000000 16:41 2017448 /usr/lib/libstdc++.so.6.0.8
b7b34000-b7b37000 r-xp 000de000 16:41 2017448 /usr/lib/libstdc++.so.6.0.8
b7b37000-b7b39000 rwxp 000e1000 16:41 2017448 /usr/lib/libstdc++.so.6.0.8
b7b39000-b7b3f000 rwxp b7b39000 00:00 0
b7b3f000-b7b47000 r-xp 00000000 16:41 2016917 /usr/lib/libdrm.so.2.3.0
b7b47000-b7b48000 rwxp 00008000 16:41 2016917 /usr/lib/libdrm.so.2.3.0
b7b48000-b7b49000 rwxp b7b48000 00:00 0
b7b49000-b7b56000 r-xp 00000000 16:41 2016772 /usr/lib/libXext.so.6.4.0
b7b56000-b7b57000 rwxp 0000d000 16:41 2016772 /usr/lib/libXext.so.6.4.0
b7b57000-b7b5b000 r-xp 00000000 16:41 2016768 /usr/lib/libXdmcp.so.6.0.0
b7b5b000-b7b5c000 rwxp 00003000 16:41 2016768 /usr/lib/libXdmcp.so.6.0.0
b7b5c000-b7b5e000 r-xp 00000000 16:41 2016757 /usr/lib/libXau.so.6.0.0
b7b5e000-b7b5f000 rwxp 00001000 16:41 2016757 /usr/lib/libXau.so.6.0.0
b7b5f000-b7b61000 r-xp 00000000 16:41 1215722 /lib/tls/i686/cmov/libdl-2.5.so
b7b61000-b7b63000 rwxp 00001000 16:41 1215722 /lib/tls/i686/cmov/libdl-2.5.so
b7b63000-b7c9e000 r-xp 00000000 16:41 1215716 /lib/tls/i686/cmov/libc-2.5.so
b7c9e000-b7c9f000 r-xp 0013b000 16:41 1215716 /lib/tls/i686/cmov/libc-2.5.so
b7c9f000-b7ca1000 rwxp 0013c000 16:41 1215716 /lib/tls/i686/cmov/libc-2.5.so
b7ca1000-b7ca4000 rwxp b7ca1000 00:00 0
b7ca4000-b7cb7000 r-xp 00000000 16:41 1215742 /lib/tls/i686/cmov/libpthread-2.5.so
b7cb7000-b7cb9000 rwxp 00013000 16:41 1215742 /lib/tls/i686/cmov/libpthread-2.5.so
b7cb9000-b7cbc000 rwxp b7cb9000 00:00 0
b7cbc000-b7ce1000 r-xp 00000000 16:41 1215724 /lib/tls/i686/cmov/libm-2.5.so
b7ce1000-b7ce3000 rwxp 00024000 16:41 1215724 /lib/tls/i686/cmov/libm-2.5.so
b7ce3000-b7d93000 r-xp 00000000 16:41 2017446 /usr/lib/libstdc++.so.5.0.7
b7d93000-b7d98000 rwxp 000af000 16:41 2017446 /usr/lib/libstdc++.so.5.0.7
b7d98000-b7d9d000 rwxp b7d98000 00:00 0
b7d9d000-b7da1000 r-xp 00000000 16:41 2016808 /usr/lib/libXxf86vm.so.1.0.0
b7da1000-b7da2000 rwxp 00003000 16:41 2016808 /usr/lib/libXxf86vm.so.1.0.0
b7da2000-b7e21000 r-xp 00000000 16:41 2016724 /usr/lib/libGLU.so.1.3.060502
b7e21000-b7e22000 rwxp 0007e000 16:41 2016724 /usr/lib/libGLU.so.1.3.060502
b7e22000-b7e7f000 r-xp 00000000 16:41 2016720 /usr/lib/libGL.so.1.2
b7e7f000-b7e81000 rwxp 0005d000 16:41 2016720 /usr/lib/libGL.so.1.2
b7e81000-b7e82000 rwxp b7e81000 00:00 0
b7e82000-b7f6f000 r-xp 00000000 16:41 2016751 /usr/lib/libX11.so.6.2.0
b7f6f000-b7f73000 rwxp 000ed000 16:41 2016751 /usr/lib/libX11.so.6.2.0
b7f73000-b7f74000 rwxp b7f73000 00:00 0
b7f76000-b7f7a000 r-xp 00000000 16:41 2016774 /usr/lib/libXfixes.so.3.1.0
b7f7a000-b7f7b000 rwxp 00003000 16:41 2016774 /usr/lib/libXfixes.so.3.1.0
b7f7b000-b7f7c000 r-xs e0101000 00:0d 16442 /dev/dri/card0
b7f7c000-b7f7e000 rwxs f8bf6000 00:0d 16442 /dev/dri/card0
b7f7e000-b7f7f000 rwxp b7f7e000 00:00 0
b7f7f000-b7f98000 r-xp 00000000 16:41 1212437 /lib/ld-2.5.so
b7f98000-b7f9a000 rwxp 00019000 16:41 1212437 /lib/ld-2.5.so
bfceb000-bfd00000 rwxp bfceb000 00:00 0 [stack]
ffffe000-fffff000 r-xp 00000000 00:00 0 [vdso]
Aborted (core dumped)

Process complete


marksibly(Posted 2007) [#2]
Can you post a small demo that causes the crash?


anawiki(Posted 2007) [#3]
Well, it's not little demo... but it replicates the crash:
http://www.anawiki.com/download/runes_of_avalon.php?os=linux

(25MB)

The problem is really strange. When nagscreen popups and you click quit debugger shows error on "end" command (appstub 11 which means no graphics initialized).

best
Roman