From d7b7b05d0ec8f67170a81666f33165996da42c64 Mon Sep 17 00:00:00 2001 From: adamdunkels Date: Wed, 3 Feb 2010 20:38:33 +0000 Subject: [PATCH] Moved the neigbor_init() call to the collect module, since it is the only one that currently uses it --- core/net/rime/collect.c | 3 ++- core/net/rime/neighbor.c | 17 ++++++++--------- core/net/rime/rime.c | 3 +-- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/core/net/rime/collect.c b/core/net/rime/collect.c index 1b76dd965..e669e8c8d 100644 --- a/core/net/rime/collect.c +++ b/core/net/rime/collect.c @@ -36,7 +36,7 @@ * * This file is part of the Contiki operating system. * - * $Id: collect.c,v 1.30 2010/02/02 21:44:05 adamdunkels Exp $ + * $Id: collect.c,v 1.31 2010/02/03 20:38:33 adamdunkels Exp $ */ /** @@ -419,6 +419,7 @@ collect_open(struct collect_conn *tc, uint16_t channels, #else neighbor_discovery_start(&tc->neighbor_discovery_conn, tc->rtmetric); #endif /* COLLECT_ANNOUNCEMENTS */ + neighbor_init(); } /*---------------------------------------------------------------------------*/ void diff --git a/core/net/rime/neighbor.c b/core/net/rime/neighbor.c index 7091ecddc..1054f6098 100644 --- a/core/net/rime/neighbor.c +++ b/core/net/rime/neighbor.c @@ -33,7 +33,7 @@ * * This file is part of the Contiki operating system. * - * $Id: neighbor.c,v 1.21 2009/11/08 19:40:17 adamdunkels Exp $ + * $Id: neighbor.c,v 1.22 2010/02/03 20:38:33 adamdunkels Exp $ */ /** @@ -114,14 +114,13 @@ periodic(void *ptr) void neighbor_init(void) { - - memb_init(&neighbors_mem); - list_init(neighbors_list); - /* for(i = 0; i < MAX_NEIGHBORS; ++i) { - rimeaddr_copy(&neighbors[i].addr, &rimeaddr_null); - }*/ - - ctimer_set(&t, CLOCK_SECOND, periodic, NULL); + static uint8_t initialized = 0; + if(initialized == 0) { + initialized = 1; + memb_init(&neighbors_mem); + list_init(neighbors_list); + ctimer_set(&t, CLOCK_SECOND, periodic, NULL); + } } /*---------------------------------------------------------------------------*/ struct neighbor * diff --git a/core/net/rime/rime.c b/core/net/rime/rime.c index b86cf8707..84b859e51 100644 --- a/core/net/rime/rime.c +++ b/core/net/rime/rime.c @@ -33,7 +33,7 @@ * * This file is part of the Contiki operating system. * - * $Id: rime.c,v 1.23 2010/01/25 13:54:26 adamdunkels Exp $ + * $Id: rime.c,v 1.24 2010/02/03 20:38:33 adamdunkels Exp $ */ /** @@ -111,7 +111,6 @@ rime_init(const struct mac_driver *m) { queuebuf_init(); packetbuf_clear(); - neighbor_init(); announcement_init(); rime_mac = m; rime_mac->set_receive_function(input);