summaryrefslogtreecommitdiffstats
path: root/runtime/msg.c
diff options
context:
space:
mode:
authorAndre Lorbach <alorbach@adiscon.com>2011-08-10 11:26:03 +0200
committerAndre Lorbach <alorbach@adiscon.com>2011-08-10 11:26:03 +0200
commitb8d5cd810008f620c789c6969e8dab1bf2219239 (patch)
tree8b4d4da14f249f27cc5192f48db8f4b5b8d2dccf /runtime/msg.c
parent98e4e10ac1a2d00c895a283e50fd76e9f7f07b3d (diff)
parent1d856763f9a3f078af7f066867ae88c59286285c (diff)
downloadrsyslog-b8d5cd810008f620c789c6969e8dab1bf2219239.tar.gz
rsyslog-b8d5cd810008f620c789c6969e8dab1bf2219239.tar.xz
rsyslog-b8d5cd810008f620c789c6969e8dab1bf2219239.zip
Merge branch 'v5-stable' into beta
Diffstat (limited to 'runtime/msg.c')
-rw-r--r--runtime/msg.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/runtime/msg.c b/runtime/msg.c
index f1701909..d61aad79 100644
--- a/runtime/msg.c
+++ b/runtime/msg.c
@@ -1641,14 +1641,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)