From 77b5831d26d9350b54e4ece78f3cd7a82298a945 Mon Sep 17 00:00:00 2001
From: Rob Swindell <rob@synchro.net>
Date: Mon, 23 Jan 2023 19:04:07 -0800
Subject: [PATCH] Fix crash in mqtt_startup() when configured broker isn't
 reachable

---
 src/sbbs3/mqtt.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/sbbs3/mqtt.c b/src/sbbs3/mqtt.c
index f2c119c228..239155fbc7 100644
--- a/src/sbbs3/mqtt.c
+++ b/src/sbbs3/mqtt.c
@@ -503,7 +503,8 @@ int mqtt_startup(struct mqtt* mqtt, scfg_t* cfg, struct startup* startup, const
 	mqtt_pub_uintval(mqtt, TOPIC_SERVER, "served", mqtt->served);
 
 #ifdef USE_MOSQUITTO
-	mosquitto_message_callback_set(mqtt->handle, mqtt_message_received);
+	if(mqtt->handle != NULL)
+		mosquitto_message_callback_set(mqtt->handle, mqtt_message_received);
 #endif
 	if(mqtt->startup->type == SERVER_TERM) {
 		bbs_startup_t* bbs_startup = (bbs_startup_t*)startup;
-- 
GitLab