From 8d02986b0ede256b060e3da890c61c25df4f1f99 Mon Sep 17 00:00:00 2001
From: Max Kellermann <mk@cm4all.com>
Date: Thu, 18 Jan 2024 16:04:55 +0100
Subject: [PATCH] lib/avahi/Publisher: add missing
 defer_register_services.Cancel() calls

---
 src/lib/avahi/Publisher.cxx | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/lib/avahi/Publisher.cxx b/src/lib/avahi/Publisher.cxx
index 8c059bc27..64cfd43ae 100644
--- a/src/lib/avahi/Publisher.cxx
+++ b/src/lib/avahi/Publisher.cxx
@@ -95,6 +95,7 @@ try {
 		}
 
 		/* And recreate the services */
+		defer_register_services.Cancel();
 		should_reset_group = false;
 		RegisterServices(*g);
 		break;
@@ -107,6 +108,7 @@ try {
 		break;
 	}
 } catch (...) {
+	defer_register_services.Cancel();
 	error_handler.OnAvahiError(std::current_exception());
 }
 
@@ -239,6 +241,7 @@ Publisher::OnAvahiDisconnect() noexcept
 {
 	group.reset();
 	should_reset_group = false;
+	defer_register_services.Cancel();
 }
 
 void
@@ -246,6 +249,7 @@ Publisher::OnAvahiChanged() noexcept
 {
 	group.reset();
 	should_reset_group = false;
+	defer_register_services.Cancel();
 }
 
 } // namespace Avahi