Wireshark-commits: [Wireshark-commits] master 802362e: Avoid recursive scan_local_interfaces operat
From: Wireshark code review <code-review-do-not-reply@xxxxxxxxxxxxx>
Date: Sun, 25 Dec 2016 08:01:05 +0000 (UTC)
URL: https://code.wireshark.org/review/gitweb?p=wireshark.git;a=commit;h=802362ee1a44d4a6494092f40e61155569ee5a6a
Submitter: Anders Broman (a.broman58@xxxxxxxxx)
Changed: branch: master
Repository: wireshark

Commits:

802362e by Mikael Kanstrup (mikael.kanstrup@xxxxxxxxx):

    Avoid recursive scan_local_interfaces operation
    
    When the local networks interfaces changes quickly or when refreshing the
    list of network interfaces there's a risk of recursive calls into
    scan_local_interfaces. The recursive calls are a result of calling
    update_cb to process UI events during function operation which in turn
    again discover a network interface change. This results in strange
    duplicate entries of network interfaces and crashes.
    
    To avoid recursive calls a check is added to stop running the function while
    already updating. This patch is really just a workaround for the problem.
    Ideally some asynchronous operation should be implemented instead to avoid
    the UI update_cb callback alltogether.
    
    Bug: 11553
    Bug: 12263
    Change-Id: I3b74d8f196677e0e261a395aff558dd9f685b538
    Reviewed-on: https://code.wireshark.org/review/14492
    Reviewed-by: Michael Mann <mmann78@xxxxxxxxxxxx>
    Petri-Dish: Michael Mann <mmann78@xxxxxxxxxxxx>
    Tested-by: Petri Dish Buildbot <buildbot-no-reply@xxxxxxxxxxxxx>
    Reviewed-by: Anders Broman <a.broman58@xxxxxxxxx>
    

Actions performed:

    from  194433a   udpdump: remove libwireshark dependancy.
    adds  802362e   Avoid recursive scan_local_interfaces operation


Summary of changes:
 ui/iface_lists.c |   11 +++++++++++
 1 file changed, 11 insertions(+)