diff options
author | AndersBroman <anders.broman@ericsson.com> | 2016-09-28 13:31:14 +0200 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2016-09-28 13:43:40 +0000 |
commit | c3b25e8111dc304486537d7cc60e54ba27c04fa0 (patch) | |
tree | b8284df0f843ac05441373d60e027d94d3af1d09 /caputils/capture-pcap-util-unix.c | |
parent | 4f636d100e35865fc7156ffb2ba674605d1b404c (diff) |
Use g_slist_prepend, it should be faster if there's a lot of IP addresses
Change-Id: I3861c0af24523315db6889b22ec93159174ba86f
Reviewed-on: https://code.wireshark.org/review/17966
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'caputils/capture-pcap-util-unix.c')
-rw-r--r-- | caputils/capture-pcap-util-unix.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/caputils/capture-pcap-util-unix.c b/caputils/capture-pcap-util-unix.c index 29be6d2b83..66a54c8591 100644 --- a/caputils/capture-pcap-util-unix.c +++ b/caputils/capture-pcap-util-unix.c @@ -211,6 +211,9 @@ get_interface_list(int *err, char **err_str) g_list_foreach(il, search_for_if_cb, &user_data); if (user_data.if_info != NULL) { if_info_add_address(user_data.if_info, &ifr->ifr_addr); + if (user_data.if_info->addrs) { + g_slist_reverse(user_data.if_info->addrs); + } goto next; } @@ -260,6 +263,9 @@ get_interface_list(int *err, char **err_str) strncmp(ifr->ifr_name, "lo", 2) == 0); if_info = if_info_new(ifr->ifr_name, NULL, loopback); if_info_add_address(if_info, &ifr->ifr_addr); + if (if_info->addrs) { + g_slist_reverse(if_info->addrs); + } if (loopback) il = g_list_append(il, if_info); else { |