Description:
Changing tables by clicking when privileges details are open causing crash entire application.
Details:
Segmentation fault
*** Segmentation fault
Register dump:
EAX: 09f4d9b0 EBX: b73e8ff4 ECX: b563e3c0 EDX: 00000000
ESI: 00000001 EDI: 08e744c8 EBP: bfd5c538 ESP: bfd5c4e0
EIP: b73c1987 EFLAGS: 00010202
CS: 0073 DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 007b
Trap: 0000000e Error: 00000004 OldMask: 00000000
ESP/signal: bfd5c4e0 CR2: 00000008
FPUCW: ffff037f FPUSW: ffff4025 TAG: ffffffff
IPOFF: b5c5659d CSSEL: 0073 DATAOFF: bfd5c050 DATASEL: 007b
ST(0) 0000 0000000000000000 ST(1) 0000 e800000000000000
ST(2) 0000 0000000000000000 ST(3) 0000 0000000000000000
ST(4) 0000 0000000000000000 ST(5) 0000 0000000000000000
ST(6) 0000 0000000000000000 ST(7) 0000 ccccccccccccd000
Backtrace:
/lib/libSegFault.so(+0x206f)[0xb76e706f]
??:0(??)[0xb76ec400]
/usr/lib/libgtkmm-2.4.so.1(_ZN3Gtk15TreeModel_Class23get_iter_vfunc_callbackEP13_GtkTreeModelP12_GtkTreeIterP12_GtkTreePath+0xb9)[0xb6b69a69]
/usr/lib/libgtk-x11-2.0.so.0(gtk_tree_model_get_iter+0xc8)[0xb65e7888]
/usr/lib/libgtk-x11-2.0.so.0(+0x24bf5f)[0xb6611f5f]
/usr/lib/libgtk-x11-2.0.so.0(+0x24e3b9)[0xb66143b9]
/usr/lib/libgtkmm-2.4.so.1(_ZN3Gtk12Widget_Class21expose_event_callbackEP10_GtkWidgetP15_GdkEventExpose+0xb1)[0xb6b88451]
/usr/lib/libgtk-x11-2.0.so.0(+0x135284)[0xb64fb284]
/usr/lib/libgobject-2.0.so.0(+0xaa87)[0xb5f2ea87]
/usr/lib/libgobject-2.0.so.0(g_closure_invoke+0x192)[0xb5f30412]
/usr/lib/libgobject-2.0.so.0(+0x221e6)[0xb5f461e6]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0x5db)[0xb5f4783b]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x32)[0xb5f47e62]
/usr/lib/libgtk-x11-2.0.so.0(+0x263b96)[0xb6629b96]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main_do_event+0x61b)[0xb64f4f2b]
/usr/lib/libgdk-x11-2.0.so.0(+0x3b7bb)[0xb62e67bb]
/usr/lib/libgdk-x11-2.0.so.0(+0x3b76a)[0xb62e676a]
/usr/lib/libgdk-x11-2.0.so.0(+0x3b76a)[0xb62e676a]
/usr/lib/libgdk-x11-2.0.so.0(+0x64e24)[0xb630fe24]
/usr/lib/libgdk-x11-2.0.so.0(+0x37f24)[0xb62e2f24]
/usr/lib/libgdk-x11-2.0.so.0(gdk_window_process_all_updates+0x13f)[0xb62e4f2f]
/usr/lib/libgdk-x11-2.0.so.0(+0x39fab)[0xb62e4fab]
/usr/lib/libgdk-x11-2.0.so.0(+0x14998)[0xb62bf998]
/lib/libglib-2.0.so.0(+0x3b841)[0xb5e1c841]
/lib/libglib-2.0.so.0(g_main_context_dispatch+0x1d5)[0xb5e1e855]
/lib/libglib-2.0.so.0(+0x41668)[0xb5e22668]
/lib/libglib-2.0.so.0(g_main_loop_run+0x187)[0xb5e22ba7]
/usr/lib/libgtk-x11-2.0.so.0(gtk_main+0xb9)[0xb64f51d9]
/usr/lib/libgtkmm-2.4.so.1(_ZN3Gtk4Main8run_implEv+0x17)[0xb6af83b7]
/usr/lib/libgtkmm-2.4.so.1(_ZN3Gtk4Main3runEv+0x22)[0xb6af81b2]
/usr/bin/mysql-workbench-bin(main+0xa91)[0x8182ee1]
/lib/libc.so.6(__libc_start_main+0xe7)[0xb54face7]
??:0(??)[0x81821e1]
How to repeat:
Create new model, user and role.
Assign role to user.
Go to eer diagram.
Create two tables.
Open details one them, in privileges tab assign created role to table.
Pick all privileges by clicking checkbox.
Double click on second table without changing anything in detail window.
Click on created role, assign to second table and click on it to pick privileges (all, select, insert etc.) - segmentation fault
Suggested fix:
Maybe refreshing window with table details (privileges tab) after switching table could fix this problem.