Wireshark-commits: [Wireshark-commits] master 5d3eea1: ConversationDialog: fix a TCP graph race con

From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Thu, 07 May 2020 03:48:55 +0000
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=5d3eea14a376d402594ae290ed9292fe57a680b5
Submitter: "Anders Broman <a.broman58@xxxxxxxxx>"
Changed: branch: master
Repository: wireshark

Commits:

5d3eea1 by Martin Kaiser (wireshark@xxxxxxxxx):

    ConversationDialog: fix a TCP graph race condition
    
    When the user opens the conversation dialog, selects a tcp conversation and
    presses the Graph button, the ConversationDialog kicks off these two actions
    
    1.) apply a display filter "tcp.stream eq X" (where X is the number of the stream)
    2.) open the tcp stream graph
    
    Both actions are asynchronous and, at least on my machines, the graph is opened
    before the filter is applied. The graph requires that the current packet be
    part of the selected tcp conversation. If it's not (because the filter isn't
    applied yet), we get the "Selected packet isn't a TCP segment or is truncated"
    error message and the graph is not shown.
    
    Fix this by enforcing the correct order for the two actions. MainWindow sends
    the displayFilterSuccess signal when a display filter was applied. Listen to this
    signal in ConversationDialog and launch the tcp graph when the filter was
    applied successfully.
    
    Change-Id: I63debe2125ba8f0a737ff4882a9fca0a7bcdb0f5
    Reviewed-on: https://code.wireshark.org/review/37130
    Reviewed-by: Martin Kaiser <wireshark@xxxxxxxxx>
    Petri-Dish: Martin Kaiser <wireshark@xxxxxxxxx>
    Tested-by: Petri Dish Buildbot
    Reviewed-by: Anders Broman <a.broman58@xxxxxxxxx>
    

Actions performed:

    from  b869452   packet-dof.c: Remove fprintf
     add  5d3eea1   ConversationDialog: fix a TCP graph race condition


Summary of changes:
 ui/qt/conversation_dialog.cpp | 24 ++++++++++++++++++++----
 ui/qt/conversation_dialog.h   |  3 +++
 2 files changed, 23 insertions(+), 4 deletions(-)