Hello to everyone!
This bug seems to be the same as this -> Bug 372560[1] - Glib error when
disposing a Combo from here ->
http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=19969099fb0b8b88c03bc7dc1b553ccf865db827
I applied the patch, rebuild the libswt-gtk-3 package and it seems to be
working. No more crashes after opening the "Preferences" dialog or the
"Find/Close" dialog (using the qtcurve gtk2 theme).
If someone wants to try, in this link
->https://drive.google.com/file/d/0BwQL0pCeC6uzU0ZQWXU2d0hoWjQ/view?usp=sharing
you have the db files for amd64
--------
[1] https://bugs.eclipse.org/bugs/show_bug.cgi?id=372560
--- a/org/eclipse/swt/widgets/Combo.java
+++ b/org/eclipse/swt/widgets/Combo.java
@@ -541,6 +541,7 @@
long /*int*/ widget = OS.g_list_data (list);
if (OS.GTK_IS_BUTTON (widget)) {
buttonHandle = widget;
+ OS.g_object_ref (buttonHandle);
break;
}
list = OS.g_list_next (list);
@@ -555,13 +556,15 @@
if (display.allChildren != 0) {
long /*int*/ list = display.allChildren;
while (list != 0) {
- long /*int*/ widget = OS.g_list_data (list);
- if (OS.G_OBJECT_TYPE (widget) == OS.GTK_TYPE_MENU ()) {
- menuHandle = widget;
- break;
+ long /*int*/ widget = OS.g_list_data (list);
+ if (OS.G_OBJECT_TYPE (widget) == OS.GTK_TYPE_MENU ()) {
+ menuHandle = widget;
+ OS.g_object_ref (menuHandle);
+ break;
+ }
+ list = OS.g_list_next (list);
}
- list = OS.g_list_next (list);
- }
+
OS.g_list_free (display.allChildren);
display.allChildren = 0;
}
@@ -1486,7 +1489,13 @@
void releaseHandle () {
super.releaseHandle ();
- buttonHandle = entryHandle = 0;
+ if (menuHandle != 0) {
+ OS.g_object_unref (menuHandle);
+ }
+ if (buttonHandle != 0) {
+ OS.g_object_unref (buttonHandle);
+ }
+ menuHandle = buttonHandle = entryHandle = 0;
}
void releaseWidget () {