if ((flags & AVAHI_PUBLISH_ALLOW_MULTIPLE) && (e->flags & AVAHI_PUBLISH_ALLOW_MULTIPLE) )
continue;
+ if (avahi_record_equal_no_ttl(r, e->record)) {
+ /* The records are the same, not a conflict in any case */
+ continue;
+ }
+
if ((interface <= 0 ||
e->interface <= 0 ||
e->interface == interface) &&
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)
}
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);
}