Hi,
Today I had reasons to troubleshoot a problem where
Wireshark terminated (on Windows) with
The only information being “This application
has requested the Runtime to terminate in an unusual way…”
Tracing it down it was a call to heur_dissector_add()
with the name argument set to a non existing dissector.
Then failing in
/* sanity check */
g_assert(sub_dissectors
!= NULL);
Changing this to assert is slightly more helpful as
it at least points to the failing assert. Should we come up with a better
way of reporting bugs and terminate the application.
Something like in file.c
dialog = simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK,
"%sOut Of
Memory!%s\n"
"\n"
"Sorry, but Wireshark
has to terminate now!\n"
"\n"
"Some infos /
workarounds can be found at:\n"
"http://wiki.wireshark.org/KnownBugs/OutOfMemory",
simple_dialog_primary_start(), simple_dialog_primary_end());
/* we have to terminate, as we
cannot recover from the memory error */
simple_dialog_set_cb(dialog, outofmemory_cb, NULL);
Regards
Anders