summaryrefslogtreecommitdiffstats
path: root/syslogd.c
diff options
context:
space:
mode:
authorMichael Meckelein <mmeckelein@hq.adiscon.com>2005-09-27 11:09:01 +0000
committerMichael Meckelein <mmeckelein@hq.adiscon.com>2005-09-27 11:09:01 +0000
commit21cbbd071a3696695490dc94b11238ae6038ff63 (patch)
treec9f34cd1e03e99661469b20b7b9051a5c4136e1c /syslogd.c
parent1c549ffeb93729f46f6124c291818861a4cecf29 (diff)
downloadrsyslog-21cbbd071a3696695490dc94b11238ae6038ff63.tar.gz
rsyslog-21cbbd071a3696695490dc94b11238ae6038ff63.tar.xz
rsyslog-21cbbd071a3696695490dc94b11238ae6038ff63.zip
fixed 'logerror' issue in DBErrorHandler which caused an endless loop
Diffstat (limited to 'syslogd.c')
-rw-r--r--syslogd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/syslogd.c b/syslogd.c
index cb69a967..8cc8aab6 100644
--- a/syslogd.c
+++ b/syslogd.c
@@ -6330,11 +6330,13 @@ void DBErrorHandler(register struct filed *f)
snprintf(errMsg, sizeof(errMsg)/sizeof(char),
"db error (%d): %s\n", mysql_errno(&f->f_hmysql),
mysql_error(&f->f_hmysql));
- logerror(errMsg);
+
/* Enable "delay" */
f->f_timeResumeOnError = time(&f->f_timeResumeOnError) + _DB_DELAYTIMEONERROR ;
f->f_iLastDBErrNo = mysql_errno(&f->f_hmysql);
+ /* Log error is the last step. */
+ logerror(errMsg);
}
/**