[Gambas-devel] Crash in gb.map when "quick scrolling"

Sebastian Kulesz sebikul at ...176...
Mon Feb 4 05:26:21 CET 2013


If i open the gb.map example and, at any time, do a quick scroll (this is,
a fast rotation of the mouse wheel to zoom in) gbx3 crashes. Here is the
output from gdb:

sebi at ...713...:/usr/share/gambas3/examples/Control/MapView$ gdb gbx3
...
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff718463b in _int_malloc () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff718463b in _int_malloc () from /usr/lib/libc.so.6
#1  0x00007ffff7186173 in malloc () from /usr/lib/libc.so.6
#2  0x00007ffff4dfc141 in gdk_pixbuf_new () from
/usr/lib/libgdk_pixbuf-2.0.so.0
#3  0x00007ffff4e05001 in gdk_pixbuf_add_alpha () from
/usr/lib/libgdk_pixbuf-2.0.so.0
#4  0x00007ffff629a8de in pixbufFromMemory (trans=<synthetic pointer>,
len=<optimized out>, addr=0x7fffed29740b "", pixbuf=<synthetic pointer>)
    at gpicture.cpp:73
#5  gPicture::fromMemory (addr=<optimized out>, len=<optimized out>) at
gpicture.cpp:330
#6  0x00007ffff62b493b in Image_Load (_object=<optimized out>,
_param=<optimized out>) at CImage.cpp:165
#7  0x000000000040a913 in EXEC_native_quick () at gbx_exec.c:1177
#8  0x0000000000435ec3 in EXEC_loop () at gbx_exec_loop.c:1276
#9  0x000000000040a19e in EXEC_function_loop () at gbx_exec.c:906
#10 0x000000000040a864 in EXEC_function_real () at gbx_exec.c:870
#11 0x000000000041f75e in raise_event (observer=observer at ...703...=0x9e09e8,
object=object at ...703...=0x9e3a18, func_id=23, func_id at ...703...=24,
nparam=nparam at ...703...=0)
    at gbx_api.c:810
#12 0x000000000042050f in GB_Raise (object=0x9e3a18, event_id=0, nparam=0)
at gbx_api.c:946
#13 0x00007fffed2c039f in raise_event (_object=0x9e3a18, event=<optimized
out>) at CCurl.c:166
#14 0x0000000000412607 in EVENT_check_post () at gbx_event.c:244
#15 0x00007ffff62bee8c in MAIN_do_iteration
(do_not_block=do_not_block at ...703...=false,
do_not_sleep=do_not_sleep at ...703...=false) at main.cpp:565
#16 0x00007ffff62beece in my_loop () at main.cpp:482
#17 0x000000000040456c in main (argc=1, argv=0x7fffffffe138) at gbx.c:402
(gdb)


Another crash i got gives this output:

*** Error in `MapView': double free or corruption (!prev):
0x0000000001dc1f20 ***
======= Backtrace: =========
/usr/lib/libc.so.6(+0x7ab06)[0x7ffff7182b06]
/usr/lib/libc.so.6(+0x7b883)[0x7ffff7183883]
/usr/lib/libcairo.so.2(+0x13da1)[0x7ffff502ada1]
/usr/lib/libcairo.so.2(cairo_surface_destroy+0x55)[0x7ffff50823f5]
/usr/lib64/gambas3/gb.gtk.so(+0x37e81)[0x7ffff629ae81]
/usr/lib64/gambas3/gb.gtk.so(+0x37ebe)[0x7ffff629aebe]
/usr/lib64/gambas3/gb.gtk.so(+0x37ed8)[0x7ffff629aed8]
/usr/lib64/gambas3/gb.image.so(+0x5508)[0x7ffff6700508]
/usr/lib64/gambas3/gb.gtk.so(+0x504b9)[0x7ffff62b34b9]
/usr/lib64/gambas3/gb.draw.so(+0x684a)[0x7fffed7af84a]
/usr/lib64/gambas3/gb.draw.so(+0x695a)[0x7fffed7af95a]
MapView[0x40a913]
MapView[0x435ec3]
MapView[0x40a19e]
MapView[0x40a864]
MapView[0x41f75e]
MapView[0x42050f]
/usr/lib64/gambas3/gb.gtk.so(+0x5e024)[0x7ffff62c1024]
/usr/lib/libgdk-x11-2.0.so.0(+0x5c53c)[0x7ffff57ab53c]
/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x135)[0x7ffff4145845]
/usr/lib/libglib-2.0.so.0(+0x47b78)[0x7ffff4145b78]
/usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x34)[0x7ffff4145c34]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main_iteration_do+0x1d)[0x7ffff5b3398d]
/usr/lib64/gambas3/gb.gtk.so(+0x5be63)[0x7ffff62bee63]
/usr/lib64/gambas3/gb.gtk.so(+0x5bece)[0x7ffff62beece]
MapView[0x40456c]
/usr/lib/libc.so.6(__libc_start_main+0xf5)[0x7ffff7129a15]
MapView[0x40467d]
======= Memory map: ========
00400000-0044e000 r-xp 00000000 08:01 1439028
 /usr/bin/gbx3
0064e000-00658000 rw-p 0004e000 08:01 1439028
 /usr/bin/gbx3
00658000-01ec5000 rw-p 00000000 00:00 0
 [heap]
7fffb0000000-7fffb0021000 rw-p 00000000 00:00 0
7fffb0021000-7fffb4000000 ---p 00000000 00:00 0
7fffb8000000-7fffb8021000 rw-p 00000000 00:00 0
7fffb8021000-7fffbc000000 ---p 00000000 00:00 0
7fffbc000000-7fffbc021000 rw-p 00000000 00:00 0
7fffbc021000-7fffc0000000 ---p 00000000 00:00 0
7fffc0000000-7fffc0021000 rw-p 00000000 00:00 0
7fffc0021000-7fffc4000000 ---p 00000000 00:00 0
7fffc4000000-7fffc4021000 rw-p 00000000 00:00 0
7fffc4021000-7fffc8000000 ---p 00000000 00:00 0
7fffc8000000-7fffc8021000 rw-p 00000000 00:00 0
7fffc8021000-7fffcc000000 ---p 00000000 00:00 0
7fffcc000000-7fffcc021000 rw-p 00000000 00:00 0
7fffcc021000-7fffd0000000 ---p 00000000 00:00 0
7fffd0000000-7fffd0021000 rw-p 00000000 00:00 0
7fffd0021000-7fffd4000000 ---p 00000000 00:00 0
7fffd4000000-7fffd4021000 rw-p 00000000 00:00 0
7fffd4021000-7fffd8000000 ---p 00000000 00:00 0
7fffd87f9000-7fffd87fa000 ---p 00000000 00:00 0
7fffd87fa000-7fffd8ffa000 rw-p 00000000 00:00 0
7fffd8ffa000-7fffd8ffb000 ---p 00000000 00:00 0
7fffd8ffb000-7fffd97fb000 rw-p 00000000 00:00 0
7fffd97fb000-7fffd97fc000 ---p 00000000 00:00 0
7fffd97fc000-7fffd9ffc000 rw-p 00000000 00:00 0
7fffd9ffc000-7fffd9ffd000 ---p 00000000 00:00 0
7fffd9ffd000-7fffda7fd000 rw-p 00000000 00:00 0
7fffdc000000-7fffdc021000 rw-p 00000000 00:00 0
7fffdc021000-7fffe0000000 ---p 00000000 00:00 0
7fffe0000000-7fffe0021000 rw-p 00000000 00:00 0
7fffe0021000-7fffe4000000 ---p 00000000 00:00 0
7fffe4000000-7fffe4021000 rw-p 00000000 00:00 0
7fffe4021000-7fffe8000000 ---p 00000000 00:00 0
7fffe9260000-7fffe9265000 r-xp 00000000 08:01 1439046
 /usr/lib/libnss_dns-2.17.so
7fffe9265000-7fffe9464000 ---p 00005000 08:01 1439046
 /usr/lib/libnss_dns-2.17.so
7fffe9464000-7fffe9465000 r--p 00004000 08:01 1439046
 /usr/lib/libnss_dns-2.17.so
7fffe9465000-7fffe9466000 rw-p 00005000 08:01 1439046
 /usr/lib/libnss_dns-2.17.so
7fffea499000-7fffeac99000 rw-s 00000000 00:04 874643475
 /SYSV00000000 (deleted)
7fffeac99000-7fffeb005000 r--p 00000000 08:01 1570139
 /usr/lib/gambas3/gb.form.stock.gambas
7fffeb0e8000-7fffeb18d000 r--p 00000000 08:01 1570871
 /usr/share/fonts/TTF/DejaVuSans-Bold.ttf
7fffeb18d000-7fffeb23d000 r--p 00000000 08:01 1572429
 /usr/share/fonts/TTF/DejaVuSans.ttf
7fffeb23d000-7fffeb284000 r--s 00000000 08:01 1308383
 /var/cache/fontconfig/f6b893a7224233d96cb72fd88691c0b4-le64.cache-3
7fffeb284000-7fffeb2ae000 r-xp 00000000 08:01 1706854
 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
7fffeb2ae000-7fffeb4ae000 ---p 0002a000 08:01 1706854
 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
7fffeb4ae000-7fffeb4af000 r--p 0002a000 08:01 1706854
 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
7fffeb4af000-7fffeb4b0000 rw-p 0002b000 08:01 1706854
 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
7fffeb4b0000-7fffeb4b6000 r-xp 00000000 08:01 1462741
 /usr/lib/libogg.so.0.8.0
7fffeb4b6000-7fffeb6b5000 ---p 00006000 08:01 1462741
 /usr/lib/libogg.so.0.8.0
7fffeb6b5000-7fffeb6b6000 rw-p 00005000 08:01 1462741
 /usr/lib/libogg.so.0.8.0
7fffeb6b6000-7fffeb6e2000 r-xp 00000000 08:01 1462753
 /usr/lib/libvorbis.so.0.4.6
7fffeb6e2000-7fffeb8e1000 ---p 0002c000 08:01 1462753
 /usr/lib/libvorbis.so.0.4.6
7fffeb8e1000-7fffeb8e2000 r--p 0002b000 08:01 1462753
 /usr/lib/libvorbis.so.0.4.6
7fffeb8e2000-7fffeb8e3000 rw-p 0002c000 08:01 1462753
 /usr/lib/libvorbis.so.0.4.6
7fffeb8e3000-7fffeb8ec000 r-xp 00000000 08:01 1459306
 /usr/lib/libltdl.so.7.3.0
7fffeb8ec000-7fffebaeb000 ---p 00009000 08:01 1459306
 /usr/lib/libltdl.so.7.3.0
7fffebaeb000-7fffebaec000 r--p 00008000 08:01 1459306
 /usr/lib/libltdl.so.7.3.0
7fffebaec000-7fffebaed000 rw-p 00009000 08:01 1459306
 /usr/lib/libltdl.so.7.3.0
7fffebaed000-7fffebafe000 r-xp 00000000 08:01 1462829
 /usr/lib/libtdb.so.1.2.11
7fffebafe000-7fffebcfe000 ---p 00011000 08:01 1462829
 /usr/lib/libtdb.so.1.2.11
7fffebcfe000-7fffebcff000 r--p 00011000 08:01 1462829
 /usr/lib/libtdb.so.1.2.11
7fffebcff000-7fffebd00000 rw-p 00012000 08:01 1462829
 /usr/lib/libtdb.so.1.2.11
7fffebd00000-7fffebd07000 r-xp 00000000 08:01 1462755
 /usr/lib/libvorbisfile.so.3.3.5
7fffebd07000-7fffebf07000 ---p 00007000 08:01 1462755
 /usr/lib/libvorbisfile.so.3.3.5
7fffebf07000-7fffebf08000 r--p 00007000 08:01 1462755
 /usr/lib/libvorbisfile.so.3.3.5
7fffebf08000-7fffebf09000 rw-p 00008000 08:01 1462755
 /usr/lib/libvorbisfile.so.3.3.5
7fffebf09000-7fffebf19000 r-xp 00000000 08:01 1448076
 /usr/lib/libcanberra.so.0.2.5
7fffebf19000-7fffec118000 ---p 00010000 08:01 1448076
 /usr/lib/libcanberra.so.0.2.5
7fffec118000-7fffec119000 r--p 0000f000 08:01 1448076
 /usr/lib/libcanberra.so.0.2.5
7fffec119000-7fffec11a000 rw-p 00010000 08:01 1448076
 /usr/lib/libcanberra.so.0.2.5
7fffec11a000-7fffec11e000 r-xp 00000000 08:01 1477786
 /usr/lib/libcanberra-gtk.so.0.1.9
7fffec11e000-7fffec31d000 ---p 00004000 08:01 1477786
 /usr/lib/libcanberra-gtk.so.0.1.9
7fffec31d000-7fffec31e000 r--p 00003000 08:01 1477786
 /usr/lib/libcanberra-gtk.so.0.1.9
7fffec31e000-7fffec31f000 rw-p 00004000 08:01 1477786
 /usr/lib/libcanberra-gtk.so.0.1.9
7fffec32d000-7fffec343000 r--s 00000000 08:01 1308366
 /var/cache/fontconfig/8d4af663993b81a124ee82e610bb31f9-le64.cache-3
7fffec343000-7fffec34f000 r--s 00000000 08:01 1323957
 /var/cache/fontconfig/5a02e0a9ca9b27d0aa4bd0c42ba2438d-le64.cache-3
7fffec34f000-7fffec354000 r-xp 00000000 08:01 1715876
 /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
7fffec354000-7fffec553000 ---p 00005000 08:01 1715876
 /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
7fffec553000-7fffec554000 r--p 00004000 08:01 1715876
 /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
7fffec554000-7fffec555000 rw-p 00005000 08:01 1715876
 /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
7fffec555000-7fffec561000 r-xp 00000000 08:01 1439101
 /usr/lib/libnss_files-2.17.so
7fffec561000-7fffec760000 ---p 0000c000 08:01 1439101
 /usr/lib/libnss_files-2.17.so
7fffec760000-7fffec761000 r--p 0000b000 08:01 1439101
 /usr/lib/libnss_files-2.17.so
7fffec761000-7fffec762000 rw-p 0000c000 08:01 1439101
 /usr/lib/libnss_files-2.17.so
7fffec768000-7fffec792000 r--p 00000000 08:01 1454778
 /usr/share/locale/es/LC_MESSAGES/gtk20-properties.mo
7fffec792000-7fffec972000 r-xp 00000000 08:01 1450109
 /usr/lib/libcrypto.so.1.0.0
7fffec972000-7fffecb71000 ---p 001e0000 08:01 1450109
 /usr/lib/libcrypto.so.1.0.0
7fffecb71000-7fffecb8c000 r--p 001df000 08:01 1450109
 /usr/lib/libcrypto.so.1.0.0
7fffecb8c000-7fffecb97000 rw-p 001fa000 08:01 1450109
 /usr/lib/libcrypto.so.1.0.0
7fffecb97000-7fffecb9b000 rw-p 00000000 00:00 0
7fffecb9b000-7fffecbfb000 r-xp 00000000 08:01 1450108
 /usr/lib/libssl.so.1.0.0
7fffecbfb000-7fffecdfa000 ---p 00060000 08:01 1450108
 /usr/lib/libssl.so.1.0.0
7fffecdfa000-7fffecdfe000 r--p 0005f000 08:01 1450108
 /usr/lib/libssl.so.1.0.0
7fffecdfe000-7fffece04000 rw-p 00063000 08:01 1450108
 /usr/lib/libssl.so.1.0.0
7fffece04000-7fffece05000 rw-p 00000000 00:00 0
7fffece05000-7fffece2c000 r-xp 00000000 08:01 1489552
 /usr/lib/libssh2.so.1.0.1
7fffece2c000-7fffed02c000 ---p 00027000 08:01 1489552
 /usr/lib/libssh2.so.1.0.1
7fffed02c000-7fffed02d000 r--p 00027000 08:01 1489552
 /usr/lib/libssh2.so.1.0.1
7fffed02d000-7fffed02e000 rw-p 00028000 08:01 1489552
 /usr/lib/libssh2.so.1.0.1
7fffed02e000-7fffed08b000 r-xp 00000000 08:01 1450843
 /usr/lib/libcurl.so.4.3.0
7fffed08b000-7fffed28a000 ---p 0005d000 08:01 1450843
 /usr/lib/libcurl.so.4.3.0
7fffed28a000-7fffed28c000 r--p 0005c000 08:01 1450843
 /usr/lib/libcurl.so.4.3.0
7fffed28c000-7fffed28d000 rw-p 0005e000 08:01 1450843
 /usr/lib/libcurl.so.4.3.0
7fffed298000-7fffed2bd000 r--p 00000000 08:01 1487458
 /usr/share/locale/es/LC_MESSAGES/libc.mo
7fffed2bd000-7fffed2c4000 r-xp 00000000 08:01 1592097
 /usr/lib/gambas3/gb.net.curl.so.0.0.0
7fffed2c4000-7fffed4c3000 ---p 00007000 08:01 1592097
 /usr/lib/gambas3/gb.net.curl.so.0.0.0
7fffed4c3000-7fffed4c6000 rw-p 00006000 08:01 1592097
 /usr/lib/gambas3/gb.net.curl.so.0.0.0
7fffed4c6000-7fffed4d1000 r-xp 00000000 08:01 1591529
 /usr/lib/gambas3/gb.net.so.0.0.0
7fffed4d1000-7fffed6d1000 ---p 0000b000 08:01 1591529
 /usr/lib/gambas3/gb.net.so.0.0.0
7fffed6d1000-7fffed6d4000 rw-p 0000b000 08:01 1591529
 /usr/lib/gambas3/gb.net.so.0.0.0
7fffed6d4000-7fffed76e000 r--p 00000000 08:01 1606653
 /usr/lib/gambas3/gb.form.gambas
7fffed76e000-7fffed7a9000 r--p 00000000 08:01 1606649
 /usr/lib/gambas3/gb.gui.base.gambas
7fffed7a9000-7fffed7b4000 r-xp 00000000 08:01 1580247
 /usr/lib/gambas3/gb.draw.so.0.0.0
7fffed7b4000-7fffed9b4000 ---p 0000b000 08:01 1580247
 /usr/lib/gambas3/gb.draw.so.0.0.0
7fffed9b4000-7fffed9b7000 rw-p 0000b000 08:01 1580247
 /usr/lib/gambas3/gb.draw.so.0.0.0
Program received signal SIGABRT, Aborted.
0x00007ffff713d2c5 in raise () from /usr/lib/libc.so.6
(gdb) bt
#0  0x00007ffff713d2c5 in raise () from /usr/lib/libc.so.6
#1  0x00007ffff713e748 in abort () from /usr/lib/libc.so.6
#2  0x00007ffff717cf7b in __libc_message () from /usr/lib/libc.so.6
#3  0x00007ffff7182b06 in malloc_printerr () from /usr/lib/libc.so.6
#4  0x00007ffff7183883 in _int_free () from /usr/lib/libc.so.6
#5  0x00007ffff502ada1 in ?? () from /usr/lib/libcairo.so.2
#6  0x00007ffff50823f5 in cairo_surface_destroy () from
/usr/lib/libcairo.so.2
#7  0x00007ffff629ae81 in gPicture::clear (this=this at ...703...=0x1c34080) at
gpicture.cpp:563
#8  0x00007ffff629aebe in gPicture::~gPicture (this=0x1c34080,
__in_chrg=<optimized out>) at gpicture.cpp:209
#9  0x00007ffff629aed8 in gPicture::~gPicture (this=0x1c34080,
__in_chrg=<optimized out>) at gpicture.cpp:210
#10 0x00007ffff6700508 in IMAGE_check (img=0x8a4be8,
temp_owner=0x7ffff64eb720 <_image_owner>) at image.c:525
#11 0x00007ffff62b34b9 in check_image (img=0x8a4be8) at cpaint_impl.cpp:74
#12 Begin (d=0x9e0bf8) at cpaint_impl.cpp:313
#13 0x00007fffed7af84a in PAINT_open (paint=0x9e0bf8) at cpaint.c:88
#14 0x00007fffed7af95a in PAINT_begin (device=0x8a4be8) at cpaint.c:149
#15 0x000000000040a913 in EXEC_native_quick () at gbx_exec.c:1177
#16 0x0000000000435ec3 in EXEC_loop () at gbx_exec_loop.c:1276
#17 0x000000000040a19e in EXEC_function_loop () at gbx_exec.c:906
#18 0x000000000040a864 in EXEC_function_real () at gbx_exec.c:870
#19 0x000000000041f75e in raise_event (observer=observer at ...703...=0x8a3b38,
object=object at ...703...=0x8a5cd8, func_id=115, func_id at ...703...=116,
nparam=nparam at ...703...=
    0) at gbx_api.c:810
#20 0x000000000042050f in GB_Raise (object=0x8a5cd8, event_id=10, nparam=0)
at gbx_api.c:946
#21 0x00007ffff62c1024 in gambas_handle_event (event=0x8abf50) at
gapplication.cpp:632
#22 0x00007ffff57ab53c in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#23 0x00007ffff4145845 in g_main_context_dispatch () from
/usr/lib/libglib-2.0.so.0
#24 0x00007ffff4145b78 in ?? () from /usr/lib/libglib-2.0.so.0
#25 0x00007ffff4145c34 in g_main_context_iteration () from
/usr/lib/libglib-2.0.so.0
#26 0x00007ffff5b3398d in gtk_main_iteration_do () from
/usr/lib/libgtk-x11-2.0.so.0
#27 0x00007ffff62bee63 in MAIN_do_iteration
(do_not_block=do_not_block at ...703...=false,
do_not_sleep=do_not_sleep at ...703...=false) at main.cpp:558
#28 0x00007ffff62beece in my_loop () at main.cpp:482
#29 0x000000000040456c in main (argc=1, argv=0x7fffffffe138) at gbx.c:402
(gdb)

I can "sort" of reproduce them (i always get a crash when i scroll) but it
depends on that i do before it. If i move the map around a bit i get a
different crash than if i directly scroll.

I'm using a fully updated Archlinux x64 system.

If you need more debug info please let me know!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gambas-basic.org/pipermail/devel/attachments/20130204/c501c60e/attachment.html>


More information about the Devel mailing list