| Summary: | [GTK3] Crash when opening a GMF/GEF-based diagram using GTK 3.22 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Alessio Di Sandro <dixxx84> | ||||||
| Component: | SWT | Assignee: | Platform-SWT-Inbox <platform-swt-inbox> | ||||||
| Status: | RESOLVED WORKSFORME | QA Contact: | |||||||
| Severity: | major | ||||||||
| Priority: | P3 | CC: | akurtakov, alois.zoitl, ericwill, loskutov, pierre-charles.david, wshuman3 | ||||||
| Version: | 4.6 | Keywords: | triaged | ||||||
| Target Milestone: | --- | ||||||||
| Hardware: | PC | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
I can confirm this behavior also for GEF 3 based editors in the same setups. As GEF 3 is below GMF I assume the cause is somewhere there. Based on the discussion in this thread [1] I made some more experiments and found out that it seems to be a GTK3 integration issue. If you disable SWT_GTK3 the GEF editor works again. However I would appreciate to have GTK 3 again. Is there I way how I can help to track this further down? [1] https://www.eclipse.org/forums/index.php/t/1081230/ In general the warnings are annoying, but not critical. I did however see this in your error log: Gtk:ERROR:/build/gtk+3.0-3.21.6/./gtk/gtkwidget.c:10232:gtk_widget_pop_verify_invariants: assertion failed: (widget->priv->verifying_invariants_count > 0) This is most likely causing the crash. Would you be able to try with 4.7M2 to confirm the issue happens on Oxygen? As haveing developed also GTK applications from 2.something on I noticed that these warnings are now maybe less critical but may turn out in the end more problematic then expected. I'll give Oxygen M2 a try over the weekend and keep you updated. I just tested it with Eclipse Platform 4.7.0.120160915-0230 and GEF (MFC) SDK 3.11.0.201606061308 which is the latest GEF 3.x version I could find. However the same problems appear. I tried with the debugger (Eclipse and gdb) hoping to get some stack trace but I was not really lucky is there a way how to debug this? Does it happen with every gmf diagram? I tried creating a really basic one and no crash happened on my machine (Gtk 3.21.6). I did further test inspired by the last comment. I can reproduce the crash even with a completely empty GEF-based editors. Therefore I took the liberty and changed also the Bug-Title. However I have only the 4diac GEF-based editors at hand. But I tried 5 different which are medium complex to complex. I tried to switch of the dashed grid which we had already a problem in Neon RC2. But this didn't changed anything. What I noticed is that the editor opens up without problems (also non empty editors) but as soon as I move my mouse over the editor the Gtk assertion happens. Interestingly also when moving the mouse over the standard GEF outline the same crash occurs. I hope this helps to narrow this issue down. Created attachment 264564 [details]
Stack overvlow as reported by AERI
I spend more time tracing this issue down. The following GTK+ functions are calling gtk_widget_pop_verify_invariants: - gtk_widget_unparent - gtk_widget_show - gtk_widget_hide - gtk_widget_map - gtk_widget_unmap - gtk_widget_realize - gtk_widget_unrealize - gtk_widget_size_allocate_with_baseline - gtk_widget_set_parent Furthermore I noticed that after updating my machine to GTk 3.22 that the assertion is gone and now I have a stack overflow error. I added an attachment reported by AERI. Which OS does this happen on? This was Linux. However since updating to Oxygen I couldn't directly reproduce the issue. Or better to say I didn't further investigated. (In reply to Alois Zoitl from comment #11) > This was Linux. However since updating to Oxygen I couldn't directly > reproduce the issue. Or better to say I didn't further investigated. Okay. I'll close this for now, if the issue happens on Photon with GTK3.22 please re-open this ticket. |
Created attachment 264185 [details] Console output during startup and crash I use Debian Unstable, which was recently upgraded to use GTK 3.21 (which will be officially released as 3.22 together with Gnome 3.22 in a week). Eclipse Neon throws a whole lot of GTK warnings when starting, but it works. Then, whenever I open a GMF diagram, a Papyrus diagram, or an Ecore Sirius diagram, it crashes badly with: Gtk:ERROR:/build/gtk+3.0-3.21.6/./gtk/gtkwidget.c:10232:gtk_widget_pop_verify_invariants: assertion failed: (widget->priv->verifying_invariants_count > 0) I'm attaching the console output. I've tried the Neon.1 release candidate 4, same problem.