GNOME Bugzilla – Bug 303391
crash when setting drawing area background inside expose event
Last modified: 2009-08-15 18:40:50 UTC
Version details: 2.6.2 Distribution/Version: gentoo relevant code: public void on_drawingarea_expose_event(ExposeEvent ev) { org.gnu.gdk.Window win = ev.getWindow(); DrawingArea da = (DrawingArea) ev.getSource(); da.setBackgroundColor(StateType.NORMAL,Color.BLACK); } crash output: An unexpected exception has been detected in native code outside the VM. Unexpected Signal : 11 occurred at PC=0xB7EC3187 Function=__libc_free+0x47 Library=/lib/libc.so.6 Current Java thread: at org.gnu.gdk.Region.gdk_region_destroy(Native Method) at org.gnu.gdk.Region.finalize(Region.java:185) at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method) at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83) java.lang.Exception: gmem.c:141: failed to allocate 4186321280 bytes at java.lang.ref.Finalizer.access$100(Finalizer.java:14) at org.gnu.glib.GObject.printStackTrace(GObject.java:644) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160) at org.gnu.gtk.Gtk.gtk_main(Native Method) at org.gnu.gtk.Gtk.main(Gtk.java:55) at playerdraw.Main.main(Main.java:64) Dynamic libraries: 08048000-08056000 r-xp 00000000 03:07 816378 /opt/sun-jdk-1.4.2.08/jre/bin/java 08056000-08059000 rwxp 0000d000 03:07 816378 /opt/sun-jdk-1.4.2.08/jre/bin/java aa82f000-aa83d000 r-xp 00000000 03:07 443794 /usr/share/fonts/culmus/NachlieliCLM-Light.pfa aa83d000-aa83f000 r-xp 00000000 03:07 296461 /usr/lib/pango/1.4.0/modules/pango-basic-fc.so aa83f000-aa840000 rwxp 00001000 03:07 296461 /usr/lib/pango/1.4.0/modules/pango-basic-fc.so aa840000-aa8ef000 r-xp 00000000 03:07 480191 /usr/lib/libgtkjni-2.4.so aa8ef000-aa8f2000 rwxp 000af000 03:07 480191 /usr/lib/libgtkjni-2.4.so aa8f2000-aa9f1000 r-xp 00000000 03:07 2333773 /usr/lib/libxml2.so.2.6.19 aa9f1000-aa9fa000 rwxp 000fe000 03:07 2333773 /usr/lib/libxml2.so.2.6.19 aa9fa000-aaa0f000 r-xp 00000000 03:07 1256950 /usr/lib/libglade-2.0.so.0.0.7 aaa0f000-aaa10000 rwxp 00015000 03:07 1256950 /usr/lib/libglade-2.0.so.0.0.7 aaa1f000-aaa2c000 r-xp 00000000 03:07 2090253 /usr/lib/gtk-2.0/2.4.0/engines/libgalaxy.so aaa2c000-aaa2d000 rwxp 0000c000 03:07 2090253 /usr/lib/gtk-2.0/2.4.0/engines/libgalaxy.so aaa2d000-aaa2f000 r-xp 00000000 03:07 118390 /usr/lib/libgladejni-2.8.so aaa2f000-aaa30000 rwxp 00001000 03:07 118390 /usr/lib/libgladejni-2.8.so aaa30000-aaa31000 r-xp 00000000 03:07 1751645 /usr/lib/gconv/ISO8859-1.so aaa31000-aaa32000 ---p 00001000 03:07 1751645 /usr/lib/gconv/ISO8859-1.so aaa32000-aaa33000 r-xp 00001000 03:07 1751645 /usr/lib/gconv/ISO8859-1.so aaa33000-aaa34000 rwxp 00002000 03:07 1751645 /usr/lib/gconv/ISO8859-1.so aaa34000-aaa35000 r-xp 00000000 03:07 1452966 /usr/lib/X11/locale/lib/common/xlcUTF8Load.so.2 aaa35000-aaa36000 rwxp 00000000 03:07 1452966 /usr/lib/X11/locale/lib/common/xlcUTF8Load.so.2 aaa36000-aaa37000 r-xp 00000000 03:07 1812160 /usr/lib/locale/en_US.utf8/LC_NUMERIC aaa37000-aaa38000 r-xp 00000000 03:07 148157 /usr/lib/locale/en_US.utf8/LC_TIME aaa38000-aab10000 r-xp 00000000 03:07 1944191 /usr/lib/locale/en_US.utf8/LC_COLLATE aab10000-aab1f000 r-xp 00000000 03:07 97946 /lib/libz.so.1.2.2 aab1f000-aab20000 rwxp 0000e000 03:07 97946 /lib/libz.so.1.2.2 aab20000-aab3e000 r-xp 00000000 03:07 86635 /usr/lib/libexpat.so.0.5.0 aab3e000-aab40000 rwxp 0001e000 03:07 86635 /usr/lib/libexpat.so.0.5.0 aab40000-aab66000 r-xp 00000000 03:07 296407 /usr/lib/libpangoft2-1.0.so.0.800.1 aab66000-aab67000 rwxp 00025000 03:07 296407 /usr/lib/libpangoft2-1.0.so.0.800.1 aab67000-aab74000 r-xp 00000000 03:07 1323064 /usr/lib/libXext.so.6.4 aab74000-aab75000 rwxp 0000c000 03:07 1323064 /usr/lib/libXext.so.6.4 aab75000-aab7c000 r-xp 00000000 03:07 1323967 /usr/lib/libXrender.so.1.2.2 aab7c000-aab7d000 rwxp 00006000 03:07 1323967 /usr/lib/libXrender.so.1.2.2 aab7d000-aab85000 r-xp 00000000 03:07 2334300 /usr/lib/libXcursor.so.1.0.2 aab85000-aab86000 rwxp 00007000 03:07 2334300 /usr/lib/libXcursor.so.1.0.2 aab86000-aab8a000 r-xp 00000000 03:07 2334308 /usr/lib/libXfixes.so.3.0 aab8a000-aab8b000 rwxp 00003000 03:07 2334308 /usr/lib/libXfixes.so.3.0 aab8b000-aabae000 r-xp 00000000 03:07 196695 /usr/lib/libfontconfig.so.1.0.4 aabae000-aabb1000 rwxp 00023000 03:07 196695 /usr/lib/libfontconfig.so.1.0.4 aabb2000-aac1c000 r-xp 00000000 03:07 985028 /usr/lib/libfreetype.so.6.3.7 aac1c000-aac23000 rwxp 0006a000 03:07 985028 /usr/lib/libfreetype.so.6.3.7 aac23000-aac34000 r-xp 00000000 03:07 1323980 /usr/lib/libXft.so.2.1.2 aac34000-aac35000 rwxp 00010000 03:07 1323980 /usr/lib/libXft.so.2.1.2 aac35000-aac37000 r-xp 00000000 03:07 1323959 /usr/lib/libXinerama.so.1.0 aac37000-aac38000 rwxp 00001000 03:07 1323959 /usr/lib/libXinerama.so.1.0 aac38000-aac3f000 r-xp 00000000 03:07 1323515 /usr/lib/libXi.so.6.0 aac3f000-aac40000 rwxp 00006000 03:07 1323515 /usr/lib/libXi.so.6.0 aac40000-aac42000 r-xp 00000000 03:07 1323991 /usr/lib/libXrandr.so.2.0 aac42000-aac43000 rwxp 00002000 03:07 1323991 /usr/lib/libXrandr.so.2.0 aac43000-aad09000 r-xp 00000000 03:07 1323027 /usr/lib/libX11.so.6.2 aad09000-aad0d000 rwxp 000c5000 03:07 1323027 /usr/lib/libX11.so.6.2 aad0d000-aad8a000 r-xp 00000000 03:07 1681410 /usr/lib/libglib-2.0.so.0.600.4 aad8a000-aad8b000 rwxp 0007d000 03:07 1681410 /usr/lib/libglib-2.0.so.0.600.4 aad8b000-aad8e000 r-xp 00000000 03:07 1681419 /usr/lib/libgmodule-2.0.so.0.600.4 aad8e000-aad8f000 rwxp 00002000 03:07 1681419 /usr/lib/libgmodule-2.0.so.0.600.4 aad8f000-aadc0000 r-xp 00000000 03:07 1681415 /usr/lib/libgobject-2.0.so.0.600.4 aadc0000-aadc1000 rwxp 00031000 03:07 1681415 /usr/lib/libgobject-2.0.so.0.600.4 aadc1000-aadf5000 r-xp 00000000 03:07 296528 /usr/lib/libpango-1.0.so.0.800.1 aadf5000-aadfa000 rwxp 00033000 03:07 296528 /usr/lib/libpango-1.0.so.0.800.1 aadfa000-aae04000 r-xp 00000000 03:07 296402 /usr/lib/libpangox-1.0.so.0.800.1 aae04000-aae05000 rwxp 00009000 03:07 296402 /usr/lib/libpangox-1.0.so.0.800.1 aae05000-aae0b000 r-xp 00000000 03:07 296412 /usr/lib/libpangoxft-1.0.so.0.800.1 aae0b000-aae0c000 rwxp 00005000 03:07 296412 /usr/lib/libpangoxft-1.0.so.0.800.1 aae0c000-aae20000 r-xp 00000000 03:07 1404515 /usr/lib/libgdk_pixbuf-2.0.so.0.600.7 aae20000-aae21000 rwxp 00013000 03:07 1404515 /usr/lib/libgdk_pixbuf-2.0.so.0.600.7 aae21000-aae38000 r-xp 00000000 03:07 266166 /usr/lib/libatk-1.0.so.0.901.0 aae38000-aae3a000 rwxp 00016000 03:07 266166 /usr/lib/libatk-1.0.so.0.901.0 aae3a000-aaeb1000 r-xp 00000000 03:07 1404524 /usr/lib/libgdk-x11-2.0.so.0.600.7 aaeb1000-aaeb4000 rwxp 00077000 03:07 1404524 /usr/lib/libgdk-x11-2.0.so.0.600.7 aaeb4000-ab174000 r-xp 00000000 03:07 1404527 /usr/lib/libgtk-x11-2.0.so.0.600.7 ab174000-ab17c000 rwxp 002c0000 03:07 1404527 /usr/lib/libgtk-x11-2.0.so.0.600.7 ab194000-ab195000 r-xp 00000000 03:07 148158 /usr/lib/locale/en_US.utf8/LC_MONETARY ab195000-ab196000 r-xp 00000000 03:07 1893599 /usr/lib/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES ab196000-ab197000 r-xp 00000000 03:07 1944200 /usr/lib/locale/en_US.utf8/LC_PAPER ab197000-ab198000 r-xp 00000000 03:07 148159 /usr/lib/locale/en_US.utf8/LC_NAME ab198000-ab199000 r-xp 00000000 03:07 148160 /usr/lib/locale/en_US.utf8/LC_ADDRESS ab199000-ab19a000 r-xp 00000000 03:07 148161 /usr/lib/locale/en_US.utf8/LC_TELEPHONE ab19a000-ab19b000 r-xp 00000000 03:07 148162 /usr/lib/locale/en_US.utf8/LC_MEASUREMENT ab19b000-ab19c000 r-xp 00000000 03:07 148163 /usr/lib/locale/en_US.utf8/LC_IDENTIFICATION ab19c000-ab256000 r-xp 00000000 03:07 1942083 /usr/lib/libgtkjni-2.6.so ab256000-ab25a000 rwxp 000b9000 03:07 1942083 /usr/lib/libgtkjni-2.6.so ab25a000-ab2f0000 r-xs 00000000 03:07 2056321 /usr/share/libgtk-java-2.6/lib/gtk2.6-2.6.2.jar ab2f0000-ab2f8000 r-xs 00000000 03:07 118400 /usr/share/libglade-java-2.8/lib/glade2.8-2.8.3.1.jar ab2f8000-ab3b4000 r-xs 00000000 03:07 931779 /opt/sun-jdk-1.4.2.08/jre/lib/ext/localedata.jar ab3b4000-ab3c1000 r-xs 00000000 03:07 931778 /opt/sun-jdk-1.4.2.08/jre/lib/ext/ldapsec.jar ab3c1000-ab3c4000 r-xs 00000000 03:07 931777 /opt/sun-jdk-1.4.2.08/jre/lib/ext/dnsns.jar ab3c4000-ab3e0000 r-xs 00000000 03:07 931774 /opt/sun-jdk-1.4.2.08/jre/lib/ext/sunjce_provider.jar ab5e4000-ab5ea000 r-xs 00000000 03:07 39654 /usr/lib/gconv/gconv-modules.cache ab5ea000-ab61d000 r-xp 00000000 03:07 1944188 /usr/lib/locale/en_US.utf8/LC_CTYPE b58cb000-b5e6b000 r-xs 00000000 03:07 834464 /opt/sun-jdk-1.4.2.08/jre/lib/charsets.jar b5e6b000-b5e7c000 r-xs 00000000 03:07 832765 /opt/sun-jdk-1.4.2.08/jre/lib/jce.jar b5e7c000-b5f59000 r-xs 00000000 03:07 834443 /opt/sun-jdk-1.4.2.08/jre/lib/jsse.jar b5f59000-b5f6f000 r-xs 00000000 03:07 832764 /opt/sun-jdk-1.4.2.08/jre/lib/sunrsasign.jar b5fb9000-b7964000 r-xs 00000000 03:07 834470 /opt/sun-jdk-1.4.2.08/jre/lib/rt.jar b7964000-b7978000 r-xp 00000000 03:07 867061 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libzip.so b7978000-b797b000 rwxp 00013000 03:07 867061 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libzip.so b797b000-b799b000 r-xp 00000000 03:07 867049 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libjava.so b799b000-b799d000 rwxp 0001f000 03:07 867049 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libjava.so b799d000-b79a5000 r-xp 00000000 03:07 1682082 /lib/libnss_files-2.3.5.so b79a5000-b79a6000 r-xp 00007000 03:07 1682082 /lib/libnss_files-2.3.5.so b79a6000-b79a7000 rwxp 00008000 03:07 1682082 /lib/libnss_files-2.3.5.so b79a7000-b79af000 r-xp 00000000 03:07 1682093 /lib/libnss_nis-2.3.5.so b79af000-b79b0000 r-xp 00007000 03:07 1682093 /lib/libnss_nis-2.3.5.so b79b0000-b79b1000 rwxp 00008000 03:07 1682093 /lib/libnss_nis-2.3.5.so b79b1000-b79b8000 r-xp 00000000 03:07 1682095 /lib/libnss_compat-2.3.5.so b79b8000-b79b9000 r-xp 00006000 03:07 1682095 /lib/libnss_compat-2.3.5.so b79b9000-b79ba000 rwxp 00007000 03:07 1682095 /lib/libnss_compat-2.3.5.so b79c1000-b79d1000 r-xp 00000000 03:07 867045 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libverify.so b79d1000-b79d3000 rwxp 0000f000 03:07 867045 /opt/sun-jdk-1.4.2.08/jre/lib/i386/libverify.so b79d3000-b79d7000 rwxs 00000000 03:07 767421 /tmp/hsperfdata_yair/24771 b79d7000-b79f8000 r-xp 00000000 03:07 1682011 /lib/libm-2.3.5.so b79f8000-b79f9000 r-xp 00020000 03:07 1682011 /lib/libm-2.3.5.so b79f9000-b79fa000 rwxp 00021000 03:07 1682011 /lib/libm-2.3.5.so b79fa000-b7a0b000 r-xp 00000000 03:07 1682092 /lib/libnsl-2.3.5.so b7a0b000-b7a0c000 r-xp 00010000 03:07 1682092 /lib/libnsl-2.3.5.so b7a0c000-b7a0d000 rwxp 00011000 03:07 1682092 /lib/libnsl-2.3.5.so b7a23000-b7a2b000 r-xp 00000000 03:07 882752 /opt/sun-jdk-1.4.2.08/jre/lib/i386/native_threads/libhpi.so b7a2b000-b7a2c000 rwxp 00007000 03:07 882752 /opt/sun-jdk-1.4.2.08/jre/lib/i386/native_threads/libhpi.so b7a2c000-b7e32000 r-xp 00000000 03:07 914175 /opt/sun-jdk-1.4.2.08/jre/lib/i386/client/libjvm.so b7e32000-b7e4d000 rwxp 00405000 03:07 914175 /opt/sun-jdk-1.4.2.08/jre/lib/i386/client/libjvm.so b7e61000-b7f70000 r-xp 00000000 03:07 1681993 /lib/libc-2.3.5.so b7f70000-b7f71000 ---p 0010f000 03:07 1681993 /lib/libc-2.3.5.so b7f71000-b7f73000 r-xp 0010f000 03:07 1681993 /lib/libc-2.3.5.so b7f73000-b7f75000 rwxp 00111000 03:07 1681993 /lib/libc-2.3.5.so b7f77000-b7f79000 r-xp 00000000 03:07 1682029 /lib/libdl-2.3.5.so b7f79000-b7f7a000 r-xp 00001000 03:07 1682029 /lib/libdl-2.3.5.so b7f7a000-b7f7b000 rwxp 00002000 03:07 1682029 /lib/libdl-2.3.5.so b7f7c000-b7f8a000 r-xp 00000000 03:07 1682122 /lib/libpthread-0.10.so b7f8a000-b7f8b000 r-xp 0000d000 03:07 1682122 /lib/libpthread-0.10.so b7f8b000-b7f8c000 rwxp 0000e000 03:07 1682122 /lib/libpthread-0.10.so b7feb000-b8000000 r-xp 00000000 03:07 1682102 /lib/ld-2.3.5.so b8000000-b8001000 r-xp 00014000 03:07 1682102 /lib/ld-2.3.5.so b8001000-b8002000 rwxp 00015000 03:07 1682102 /lib/ld-2.3.5.so Heap at VM Abort: Heap def new generation total 576K, used 65K [0xab820000, 0xab8c0000, 0xabd00000) eden space 512K, 0% used [0xab820000, 0xab820750, 0xab8a0000) from space 64K, 99% used [0xab8b0000, 0xab8bfff8, 0xab8c0000) to space 64K, 0% used [0xab8a0000, 0xab8a0000, 0xab8b0000) tenured generation total 1408K, used 265K [0xabd00000, 0xabe60000, 0xaf820000) the space 1408K, 18% used [0xabd00000, 0xabd42550, 0xabd42600, 0xabe60000) compacting perm gen total 4096K, used 1580K [0xaf820000, 0xafc20000, 0xb3820000) the space 4096K, 38% used [0xaf820000, 0xaf9ab268, 0xaf9ab400, 0xafc20000) Local Time = Sat May 7 19:35:33 2005 Elapsed Time = 3 # # The exception above was detected in native code outside the VM # # Java VM: Java HotSpot(TM) Client VM (1.4.2_08-b03 mixed mode) #
*** Bug 303390 has been marked as a duplicate of this bug. ***
ok , i think i've figured it out when using DrawingArea, Region is called with an existing handle. in that case , since the handle was created outside of Region it should not be de-allocated when Region is finalized. however, in the Region finalize gdk_region_destroy() is always called. the fix is to add a boolean to check if Region was created with an existing handle, and if so to not destroy the handle on finalize() i'm almost sure this is it, but i'm still not a gtk expert. this bug is relavent to cvs HEAD aswell as 2.6.2 *** This bug has been marked as a duplicate of 171427 ***
CVS HEAD is being upgraded with memory management changes. This bug should go away once those changes are complete. The bug #171427 is currently not reproducable with CVS HEAD. This is due, i believe, to the memory management changes already in CVS.
Thanks for reporting this. I believe this to be a duplicate of bug #171427. Closing it as such. Please re-open if it is still happening. *** This bug has been marked as a duplicate of 171427 ***