Ethereal-cvs: [ethereal-cvs] cvs commit: ethereal/gtk main.c

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <guy@xxxxxxxxxxxx>
Date: Sat, 1 Apr 2000 05:31:06 -0600 (CST)
guy         2000/04/01 05:31:02 CST

  Modified files:
    gtk                  main.c 
  Log:
  There's no need to catch the "delete_event" signal on "Follow TCP
  Stream" windows - the window should always be deleted in that situation,
  so there's no need for a signal handler that might return TRUE (meaning
  "don't delete the window"), and the "destroy" handler gets called when
  the window actually gets destroyed, so there's no need to do any cleanup
  in the "delete_event" handler.
  
  Catch the "delete_event" signal on the main window in a routine with the
  right signature, and that returns FALSE so that the window actually gets
  deleted.
  
  Call "close_cap_file()" in the callback for the "File:Quit" menu item
  (which is also called by the "delete_event" handler for the main
  window), rather than calling it after "gtk_main()" returns -
  "close_cap_file()" manipulates stuff in the main window, and if we do so
  after "gtk_main()" returns, it appears that the main window may have
  disappeared (if we are exiting because the user deleted the main
  window), in which case we can get crashes or other errors when
  "close_cap_file()" tries to manipulate stuff in the main window.
  
  There's no need to catch the "destroy" signal on the main window - we do
  some of the cleanup in the handler for "delete_event" (we have to, for
  reasons described above), and we do the rest of it after the main
  routine returns.
  
  Revision  Changes    Path
  1.111     +44 -13    ethereal/gtk/main.c