summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--avahi-core/entry.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/avahi-core/entry.c b/avahi-core/entry.c
index 9e9c0dd..e2a7c6c 100644
--- a/avahi-core/entry.c
+++ b/avahi-core/entry.c
@@ -1014,6 +1014,11 @@ void avahi_s_entry_group_change_state(AvahiSEntryGroup *g, AvahiEntryGroupState
if (avahi_age(&g->established_at) > 5000000)
g->n_register_try = 0;
+ } else if (g->state == AVAHI_ENTRY_GROUP_REGISTERING) {
+ if (g->register_time_event) {
+ avahi_time_event_free(g->register_time_event);
+ g->register_time_event = NULL;
+ }
}
if (state == AVAHI_ENTRY_GROUP_ESTABLISHED)
@@ -1153,15 +1158,8 @@ void avahi_s_entry_group_reset(AvahiSEntryGroup *g) {
}
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->n_probing = 0;
- gettimeofday(&g->register_time, NULL);
-
avahi_s_entry_group_change_state(g, AVAHI_ENTRY_GROUP_UNCOMMITED);
}