Wireshark-bugs: [Wireshark-bugs] [Bug 5187] Wireshark crashes when sorting while capturing data

Date: Thu, 10 Mar 2011 15:27:19 -0800 (PST)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5187

Bill Meier <wmeier@xxxxxxxxxxx> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #5 from Bill Meier <wmeier@xxxxxxxxxxx> 2011-03-10 18:27:14 EST ---

For the record:

> a note: for the fourth time, it had enough data that it opened a dialog window
> indicating the sort progress. the program crashed immediately after the sort
> was completed and the dialog went away

In this case (when a dialog window appears during the sort) the crash was
caused by a "race" problem. The following pseudo-code reflects the actual
Wireshark code and demonstrates the problem.

sort:
  max_row = list_nrows;
  for row = 1 to max_row {
     columnize_list_row(row);  // fill in fields req'd by sort
     update_dialog_window();   // processes waiting events (like:
             >> // "interrupt" event processed which does the following
             >> append_new_row_to_list();  
             >> list_nrows += 1;
  }
  sort_list(list_nrows);  // fails since appended row(s) not columnized

---------

> #1 begin capturing data
> #2 in the capture window, click on the No., Time, Source, Destination,
> Protocol, or Info headers until crash. 

> for me, step 2 took 1 click the first time, 2 clicks the second time, 
> 15 clicks the 3rd time, 

In these cases (no dialog window ?) I imagine there is a similar "race
condition" as above (altho I don't immediately see the exact mechanism).


============

In any case: SVN #34126 was committed (9/23/10) to disable sorting while a
capture is in progress thus preventing the above scenarios.

It might be nice to find a better solution so that sorts could be allowed while
capturing. See Bug #4273.

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.