diff --git a/src/ai/ai_client.c b/src/ai/ai_client.c index 5fc2ac7a..ffa3947d 100644 --- a/src/ai/ai_client.c +++ b/src/ai/ai_client.c @@ -90,7 +90,10 @@ _aiwin_validate(gpointer user_data) return NULL; } - if (!wins_ai_exists((ProfAiWin*)user_data)) { + pthread_mutex_lock(&lock); + gboolean win_exists = wins_ai_exists((ProfAiWin*)user_data); + pthread_mutex_unlock(&lock); + if (!win_exists) { log_warning("[AI-THREAD] aiwin=%p no longer exists — window was closed", (void*)user_data); return NULL; }