summaryrefslogtreecommitdiff
path: root/ui/qt/lbm_uimflow_dialog.cpp
diff options
context:
space:
mode:
authorBalint Reczey <balint@balintreczey.hu>2014-06-22 12:53:48 -0700
committerBalint Reczey <balint@balintreczey.hu>2014-06-27 08:55:11 +0000
commita67b7f5b5c563e54ca630370cdf7f696e4ce59a5 (patch)
treef1af43d810fa6746f8fb60136048757d1d6c3c78 /ui/qt/lbm_uimflow_dialog.cpp
parent9ef47ae8c82abc1edc83408b4c2a93aaff40e282 (diff)
downloadwireshark-a67b7f5b5c563e54ca630370cdf7f696e4ce59a5.tar.gz
Use GQueue for generating statistics
This makes reversing the list back and forth to keep adding data at O(n) complexity obsolete. Bug: 9696 Change-Id: Ice77328b8f6c5bf72bbfcfd82e08d09d4f986d3f Reviewed-on: https://code.wireshark.org/review/2571 Reviewed-by: Balint Reczey <balint@balintreczey.hu> Tested-by: Balint Reczey <balint@balintreczey.hu>
Diffstat (limited to 'ui/qt/lbm_uimflow_dialog.cpp')
-rw-r--r--ui/qt/lbm_uimflow_dialog.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/ui/qt/lbm_uimflow_dialog.cpp b/ui/qt/lbm_uimflow_dialog.cpp
index faff6d8a26..8b04651766 100644
--- a/ui/qt/lbm_uimflow_dialog.cpp
+++ b/ui/qt/lbm_uimflow_dialog.cpp
@@ -152,7 +152,7 @@ static gboolean lbm_uimflow_add_to_graph(seq_analysis_info_t * seq_info, packet_
item->conv_num = (guint16)LBM_CHANNEL_ID(stream_info->channel);
item->display = TRUE;
item->line_style = 1;
- seq_info->list = g_list_prepend(seq_info->list, (gpointer)item);
+ g_queue_push_tail(seq_info->items, item);
return (TRUE);
}
@@ -178,11 +178,10 @@ static void lbm_uimflow_get_analysis(capture_file * cfile, seq_analysis_info_t *
register_tap_listener("lbm_uim", (void *)seq_info, NULL, TL_REQUIRES_COLUMNS, NULL, lbm_uimflow_tap_packet, NULL);
cf_retap_packets(cfile);
- seq_info->list = g_list_reverse(seq_info->list);
remove_tap_listener((void *)seq_info);
/* Fill in the timestamps. */
- list = g_list_first(seq_info->list);
+ list = g_queue_peek_nth_link(seq_info->items, 0);
while (list != NULL)
{
seq_analysis_item_t * seq_item = (seq_analysis_item_t *)list->data;
@@ -506,7 +505,7 @@ void LBMUIMFlowDialog::fillDiagram(void)
seq_analysis_info_t new_sa;
new_sa = m_sequence_analysis;
- new_sa.list = NULL;
+ new_sa.items = g_queue_new();
new_sa.ht = NULL;
new_sa.num_nodes = 0;
lbm_uimflow_get_analysis(m_capture_file, &new_sa);