After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 303391 - crash when setting drawing area background inside expose event
crash when setting drawing area background inside expose event
Status: VERIFIED DUPLICATE of bug 171427
Product: java-gnome
Classification: Bindings
Component: GTK
Not Applicable
Other Linux
: Normal normal
: ---
Assigned To: java-gnome bindings maintainers
java-gnome bindings maintainers
: 303390 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-05-07 16:40 UTC by Yair Hershkovitz
Modified: 2009-08-15 18:40 UTC
See Also:
GNOME target: ---
GNOME version: 2.9/2.10



Description Yair Hershkovitz 2005-05-07 16:40:51 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)
#
Comment 1 Olav Vitters 2005-05-07 20:40:44 UTC
*** Bug 303390 has been marked as a duplicate of this bug. ***
Comment 2 Yair Hershkovitz 2005-05-08 22:58:14 UTC
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 ***
Comment 3 Nicholas Rahn 2005-06-15 12:47:14 UTC
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.
Comment 4 Ismael Juma 2005-09-25 12:19:05 UTC
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 ***