Merge pull request #2882 from qlyoung/fix-zlog-deadlock

lib: fix deadlock in log.c
This commit is contained in:
David Lamparter 2018-08-21 21:21:28 +02:00 committed by GitHub
commit f4c28c4486
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -868,11 +868,16 @@ int zlog_rotate(void)
save_errno = errno;
umask(oldumask);
if (zl->fp == NULL) {
pthread_mutex_unlock(&loglock);
flog_err_sys(
LIB_ERR_SYSTEM_CALL,
"Log rotate failed: cannot open file %s for append: %s",
zl->filename, safe_strerror(save_errno));
ret = -1;
pthread_mutex_lock(&loglock);
} else {
logfile_fd = fileno(zl->fp);
zl->maxlvl[ZLOG_DEST_FILE] = level;