On Mar 9, 2012, at 4:01 AM, Anders Broman wrote:
> If I try to run /wireshark-gtk2/wireshark -k: 127 wireshark crashes in file_util.c in ws_load_library(gchar *library_name)
Actually, no, at least not with my tests; it appears to crash as a result of this change between the last build that didn't crash and the first build that did:
Index: ui/gtk/main_statusbar.c
===================================================================
--- ui/gtk/main_statusbar.c (revision 41422)
+++ ui/gtk/main_statusbar.c (revision 41424)
...
@@ -719,6 +717,10 @@
{
/* go back to "No packets" */
packets_bar_update();
+ /* Remove comments icon */
+ status_capture_comment_hide();
+ /* Remove experts icon */
+ status_expert_hide();
}
If I remove those four lines, it doesn't crash - and if I put back the status_capture_comment_hide() call, it still doesn't crash, so it's the status_expert_hide() that ultimately causes the crash.
The widgets that status_expert_hide() hides are event boxes, which, according to the documentation:
http://developer.gnome.org/gtk3/stable/GtkEventBox.html
have their own windows. Perhaps this is an issue with the Windows version of GTK+?
(No, I don't know why that only happens with "-k". Adding null pointer checks in status_expert_hide() doesn't fix the problem, but perhaps adding "-k" means that those widgets have been created, but *not* yet properly initialized, by the time status_expert_hide() is called?)