diff options
author | Michael Mann <mmann78@netscape.net> | 2016-10-18 20:34:37 -0400 |
---|---|---|
committer | Pascal Quantin <pascal.quantin@gmail.com> | 2016-11-10 20:48:18 +0000 |
commit | 66fa31415ff8d520c71dc66718599e941ed05c29 (patch) | |
tree | 4ecb47b8faabeea22471682e85771410ec6e5d5e /ui/gtk/follow_stream.c | |
parent | b489b7ff7d4ba9f000f29c608515eb43059855ab (diff) |
tcp: Fix Follow TCP tap data and when its tapped.
Use the model from the 2.0 branch and earlier that only "tapped" the
follow data in a single location. This fixes duplicate data for
reassembled data and handles out-of-order packets.
Bug: 12855
Change-Id: I5268f13e3c08e9271acf026b859de693ad794c94
Reviewed-on: https://code.wireshark.org/review/18368
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Diffstat (limited to 'ui/gtk/follow_stream.c')
-rw-r--r-- | ui/gtk/follow_stream.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/ui/gtk/follow_stream.c b/ui/gtk/follow_stream.c index 2f78694df4..f85dac21e0 100644 --- a/ui/gtk/follow_stream.c +++ b/ui/gtk/follow_stream.c @@ -1038,29 +1038,14 @@ static void follow_destroy_cb(GtkWidget *w, gpointer data _U_) { follow_info_t *follow_info; - follow_record_t *follow_record; gtk_follow_info_t *gtk_follow_info; - GList *cur; follow_info = (follow_info_t *)g_object_get_data(G_OBJECT(w), E_FOLLOW_INFO_KEY); gtk_follow_info = (gtk_follow_info_t *)follow_info->gui_data; - for(cur = follow_info->payload; cur; cur = g_list_next(cur)) - if(cur->data) { - follow_record = (follow_record_t *)cur->data; - if(follow_record->data) - g_byte_array_free(follow_record->data, TRUE); - - g_free(follow_record); - } - - g_list_free(follow_info->payload); - - g_free(follow_info->filter_out_filter); - free_address(&follow_info->client_ip); forget_follow_info(follow_info); g_free(gtk_follow_info); - g_free(follow_info); + follow_info_free(follow_info); gtk_widget_destroy(w); } |