From 41ca02b5d691f29aac2649230b2151774c6467f4 Mon Sep 17 00:00:00 2001 From: Kern Sibbald Date: Fri, 19 Nov 2004 09:51:22 +0000 Subject: [PATCH] 19Nov04 - Fix mutex deadlock in dequeue of messages. - Add debug code to FD authorization. git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@1706 91ce42f0-d328-0410-95d8-f526ca767f89 --- bacula/src/lib/message.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bacula/src/lib/message.c b/bacula/src/lib/message.c index 03f7afaf62..1c060c5486 100755 --- a/bacula/src/lib/message.c +++ b/bacula/src/lib/message.c @@ -1255,7 +1255,6 @@ void Qmsg(JCR *jcr, int type, time_t mtime, const char *fmt,...) item->type = type; item->mtime = time(NULL); strcpy(item->msg, pool_buf); - P(msg_queue_mutex); /* If no jcr or dequeuing send to daemon to avoid recursion */ if (!jcr || jcr->dequeuing) { /* jcr==NULL => daemon message, safe to send now */ @@ -1263,10 +1262,11 @@ void Qmsg(JCR *jcr, int type, time_t mtime, const char *fmt,...) free(item); } else { /* Queue message for later sending */ + P(msg_queue_mutex); jcr->msg_queue->append(item); + V(msg_queue_mutex); // Dmsg1(000, "queue item=%lu\n", (long unsigned)item); } - V(msg_queue_mutex); free_memory(pool_buf); } -- 2.39.5