summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorAndre Lorbach <alorbach@adiscon.com>2011-08-10 11:27:03 +0200
committerAndre Lorbach <alorbach@adiscon.com>2011-08-10 11:27:03 +0200
commit116fb13d42695835487e7984e41090bd02d370c1 (patch)
tree4dbf4fe3681a6de9a20904477266344281d38fb4 /runtime
parent26220bb426802aa5c07a1904575ddd0d6a3de177 (diff)
parent1d856763f9a3f078af7f066867ae88c59286285c (diff)
downloadrsyslog-116fb13d42695835487e7984e41090bd02d370c1.tar.gz
rsyslog-116fb13d42695835487e7984e41090bd02d370c1.tar.xz
rsyslog-116fb13d42695835487e7984e41090bd02d370c1.zip
Merge branch 'v5-stable'
Diffstat (limited to 'runtime')
-rw-r--r--runtime/msg.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/runtime/msg.c b/runtime/msg.c
index fdc2174f..40fbf839 100644
--- a/runtime/msg.c
+++ b/runtime/msg.c
@@ -1621,14 +1621,21 @@ finalize_it:
}
-/* rgerhards, 2005-11-24
+/* al, 2011-07-26: LockMsg to avoid race conditions
*/
static inline char *getMSGID(msg_t *pM)
{
- return (pM->pCSMSGID == NULL) ? "-" : (char*) rsCStrGetSzStrNoNULL(pM->pCSMSGID);
+ if (pM->pCSMSGID == NULL) {
+ return "-";
+ }
+ else {
+ MsgLock(pM);
+ char* pszreturn = (char*) rsCStrGetSzStrNoNULL(pM->pCSMSGID);
+ MsgUnlock(pM);
+ return pszreturn;
+ }
}
-
/* rgerhards 2009-06-12: set associated ruleset
*/
void MsgSetRuleset(msg_t *pMsg, ruleset_t *pRuleset)