From 3ef2fd614d578b0cb56c563a5fa7eeaa20ce652b Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Fri, 16 Oct 2015 15:00:24 +0200 Subject: Qt: fix crash when using Telephony -> VOIP Calls -> Flow Sequence Bug: 11600 Change-Id: I1baa02b3d57ded5602c3c16466e7a9eb87459f61 Reviewed-on: https://code.wireshark.org/review/11091 Reviewed-by: Pascal Quantin Petri-Dish: Pascal Quantin Tested-by: Petri Dish Buildbot Reviewed-by: Alexis La Goutte --- ui/qt/voip_calls_dialog.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'ui') diff --git a/ui/qt/voip_calls_dialog.cpp b/ui/qt/voip_calls_dialog.cpp index ee15caf6ca..38b919c94a 100644 --- a/ui/qt/voip_calls_dialog.cpp +++ b/ui/qt/voip_calls_dialog.cpp @@ -352,7 +352,11 @@ void VoipCallsDialog::prepareFilter() /* Build a new filter based on frame numbers */ const char *or_prepend = ""; foreach (QTreeWidgetItem *ti, ui->callTreeWidget->selectedItems()) { - voip_calls_info_t *call_info = ti->data(0, Qt::UserRole).value(); + VoipCallsTreeWidgetItem *vc_ti = static_cast(ti); + voip_calls_info_t *call_info = vc_ti->callInfo(); + if (!call_info) { + return; + } selected_calls << call_info->call_num; } @@ -463,7 +467,11 @@ void VoipCallsDialog::showSequence() QSet selected_calls; foreach (QTreeWidgetItem *ti, ui->callTreeWidget->selectedItems()) { - voip_calls_info_t *call_info = ti->data(0, Qt::UserRole).value(); + VoipCallsTreeWidgetItem *vc_ti = static_cast(ti); + voip_calls_info_t *call_info = vc_ti->callInfo(); + if (!call_info) { + return; + } selected_calls << call_info->call_num; } @@ -513,7 +521,8 @@ void VoipCallsDialog::showPlayer() void VoipCallsDialog::on_callTreeWidget_itemActivated(QTreeWidgetItem *item, int) { - voip_calls_info_t *call_info = item->data(0, Qt::UserRole).value(); + VoipCallsTreeWidgetItem *vc_ti = static_cast(item); + voip_calls_info_t *call_info = vc_ti->callInfo(); if (!call_info) { return; } -- cgit v1.2.3