diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2013-04-09 10:54:04 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2013-04-09 10:54:04 +0200 |
commit | 86e34c6985da29c62f13ab83e44548f1fd21849d (patch) | |
tree | 4bae37bc40854dc0d60a68cacc1a7cd488c83961 /action.c | |
parent | d9cde56eb8532bd660d6feb2249562afac0c40f6 (diff) | |
download | rsyslog-86e34c6985da29c62f13ab83e44548f1fd21849d.tar.gz rsyslog-86e34c6985da29c62f13ab83e44548f1fd21849d.tar.bz2 rsyslog-86e34c6985da29c62f13ab83e44548f1fd21849d.zip |
make imrelp properly terminate on system shutdown
it didn't do so if it was inside a retry loop
Diffstat (limited to 'action.c')
-rw-r--r-- | action.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -1284,8 +1284,11 @@ processBatchMain(action_t *pAction, batch_t *pBatch, int *pbShutdownImmediate) assert(pBatch != NULL); - pbShutdownImmdtSave = pBatch->pbShutdownImmediate; - pBatch->pbShutdownImmediate = pbShutdownImmediate; + if(pbShutdownImmediate != NULL) { + pbShutdownImmdtSave = pBatch->pbShutdownImmediate; + pBatch->pbShutdownImmediate = pbShutdownImmediate; +dbgprintf("DDDD: processBatchMain ShutdownImmediate is %p, was %p\n", pBatch->pbShutdownImmediate, pbShutdownImmdtSave); + } CHKiRet(prepareBatch(pAction, pBatch, &activeSave, &bMustRestoreActivePtr)); /* We now must guard the output module against execution by multiple threads. The @@ -1316,7 +1319,8 @@ processBatchMain(action_t *pAction, batch_t *pBatch, int *pbShutdownImmediate) } finalize_it: - pBatch->pbShutdownImmediate = pbShutdownImmdtSave; + if(pbShutdownImmediate != NULL) + pBatch->pbShutdownImmediate = pbShutdownImmdtSave; RETiRet; } #pragma GCC diagnostic warning "-Wempty-body" |