diff options
author | Michal Labedzki <michal.labedzki@tieto.com> | 2015-01-08 12:22:18 +0100 |
---|---|---|
committer | Michal Labedzki <michal.labedzki@tieto.com> | 2015-01-08 12:40:52 +0000 |
commit | bd1cd01c7d4e65d92b49eae89ea3efc5a6c95568 (patch) | |
tree | 52a279afa4e42dacf0e61cc6a28e0e6ba59ff37d /ui/gtk/rtp_stream_dlg.c | |
parent | b6cf61bfe3694fdf7c12f5fb99dd4d28ca11b396 (diff) |
GTK/RTP Player: Fix crash when touch RTP Stream
Move converts of addresses when they are really valid.
Change-Id: Ie0c77e8e23bd97ba55d68dad7da7015b9d355b0d
Reviewed-on: https://code.wireshark.org/review/6397
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Michal Orynicz <michal.orynicz@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Diffstat (limited to 'ui/gtk/rtp_stream_dlg.c')
-rw-r--r-- | ui/gtk/rtp_stream_dlg.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/ui/gtk/rtp_stream_dlg.c b/ui/gtk/rtp_stream_dlg.c index 9242bb4208..bf1d9033f0 100644 --- a/ui/gtk/rtp_stream_dlg.c +++ b/ui/gtk/rtp_stream_dlg.c @@ -637,9 +637,10 @@ rtpstream_view_selection_func(GtkTreeSelection *selection, GtkTreeModel *model, } } - src_addr = (char*)address_to_display(NULL, &(selected_stream_fwd->src_addr)); - dst_addr = (char*)address_to_display(NULL, &(selected_stream_fwd->dest_addr)); if (selected_stream_fwd) { + src_addr = (char*)address_to_display(NULL, &(selected_stream_fwd->src_addr)); + dst_addr = (char*)address_to_display(NULL, &(selected_stream_fwd->dest_addr)); + g_snprintf(label_text, sizeof(label_text), "Forward: %s:%u -> %s:%u, SSRC=0x%X", src_addr, selected_stream_fwd->src_port, @@ -648,18 +649,20 @@ rtpstream_view_selection_func(GtkTreeSelection *selection, GtkTreeModel *model, selected_stream_fwd->ssrc ); gtk_label_set_text(GTK_LABEL(label_fwd), label_text); + + wmem_free(NULL, src_addr); + wmem_free(NULL, dst_addr); } else { if (selected_stream_rev) gtk_label_set_text(GTK_LABEL(label_fwd), FWD_ONLY_LABEL_TEXT); else gtk_label_set_text(GTK_LABEL(label_fwd), FWD_LABEL_TEXT); } - wmem_free(NULL, src_addr); - wmem_free(NULL, dst_addr); - src_addr = (char*)address_to_display(NULL, &(selected_stream_rev->src_addr)); - dst_addr = (char*)address_to_display(NULL, &(selected_stream_rev->dest_addr)); if (selected_stream_rev) { + src_addr = (char*)address_to_display(NULL, &(selected_stream_rev->src_addr)); + dst_addr = (char*)address_to_display(NULL, &(selected_stream_rev->dest_addr)); + g_snprintf(label_text, sizeof(label_text), "Reverse: %s:%u -> %s:%u, SSRC=0x%X", src_addr, selected_stream_rev->src_port, @@ -668,11 +671,12 @@ rtpstream_view_selection_func(GtkTreeSelection *selection, GtkTreeModel *model, selected_stream_rev->ssrc ); gtk_label_set_text(GTK_LABEL(label_rev), label_text); + + wmem_free(NULL, src_addr); + wmem_free(NULL, dst_addr); } else { gtk_label_set_text(GTK_LABEL(label_rev), REV_LABEL_TEXT); } - wmem_free(NULL, src_addr); - wmem_free(NULL, dst_addr); return result; } |