From: Guus Sliepen Date: Tue, 26 Jun 2012 12:22:57 +0000 (+0200) Subject: Fix crash when handling the ALRM signal. X-Git-Tag: import-tinc-1.1~368 X-Git-Url: https://git.meshlink.io/?a=commitdiff_plain;h=bce177767d521b47efd458c5cd570959a98d940d;p=meshlink Fix crash when handling the ALRM signal. In retry() the function do_outgoing_connection() is called, which can delete items from the connection_tree, so when walking the tree we must first save the pointer to the next item. --- diff --git a/src/net.c b/src/net.c index 295546df..863dd762 100644 --- a/src/net.c +++ b/src/net.c @@ -341,9 +341,10 @@ int reload_configuration(void) { void retry(void) { connection_t *c; - splay_node_t *node; + splay_node_t *node, *next; - for(node = connection_tree->head; node; node = node->next) { + for(node = connection_tree->head; node; node = next) { + next = node->next; c = node->data; if(c->outgoing && !c->node) {