summaryrefslogtreecommitdiffstats
path: root/avahi-core/server.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2005-09-28 01:12:34 +0000
committerLennart Poettering <lennart@poettering.net>2005-09-28 01:12:34 +0000
commit5de0404511175a1c294229b1cbda1c51a7a5eb8c (patch)
tree7e4c4cc0c7739306869b44a3f98e45aaa347065b /avahi-core/server.c
parentc2800ad3a9fe1b4ccb750d04b6c8a80b084ba182 (diff)
* fix a bug found by Sebastien triggered be repeatedly resetting and commiting an entry group
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@641 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-core/server.c')
-rw-r--r--avahi-core/server.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/avahi-core/server.c b/avahi-core/server.c
index dc63c67..c4545c6 100644
--- a/avahi-core/server.c
+++ b/avahi-core/server.c
@@ -2331,26 +2331,23 @@ void avahi_s_entry_group_reset(AvahiSEntryGroup *g) {
AvahiEntry *e;
assert(g);
- if (g->register_time_event) {
- avahi_time_event_free(g->register_time_event);
- g->register_time_event = NULL;
- }
-
for (e = g->entries; e; e = e->by_group_next) {
if (!e->dead) {
avahi_goodbye_entry(g->server, e, 1);
e->dead = 1;
}
}
+ g->server->need_entry_cleanup = 1;
if (g->register_time_event) {
avahi_time_event_free(g->register_time_event);
g->register_time_event = NULL;
}
- g->server->need_entry_cleanup = 1;
g->n_probing = 0;
+ gettimeofday(&g->register_time, NULL);
+
avahi_s_entry_group_change_state(g, AVAHI_ENTRY_GROUP_UNCOMMITED);
}