[lvm-devel] LVM2/lib/log log.c
agk at sourceware.org
agk at sourceware.org
Mon Jan 11 20:41:40 UTC 2010
CVSROOT: /cvs/lvm2
Module name: LVM2
Changes by: agk at sourceware.org 2010-01-11 20:41:40
Modified files:
lib/log : log.c
Log message:
Use _LOG_FATAL when aborting on an internal error.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/lib/log/log.c.diff?cvsroot=lvm2&r1=1.56&r2=1.57
--- LVM2/lib/log/log.c 2010/01/11 20:30:32 1.56
+++ LVM2/lib/log/log.c 2010/01/11 20:41:39 1.57
@@ -179,16 +179,20 @@
const char *trformat; /* Translated format string */
char *newbuf;
int use_stderr = level & _LOG_STDERR;
- int internal_error = 0;
+ int fatal_internal_error = 0;
level &= ~_LOG_STDERR;
if (_abort_on_internal_errors &&
!strncmp(format, INTERNAL_ERROR,
- strlen(INTERNAL_ERROR)))
- internal_error = 1;
- else if (_log_suppress == 2)
+ strlen(INTERNAL_ERROR))) {
+ fatal_internal_error = 1;
/* Internal errors triggering abort cannot be suppressed. */
+ _log_suppress = 0;
+ level = _LOG_FATAL;
+ }
+
+ if (_log_suppress == 2)
return;
if (level <= _LOG_ERR)
@@ -245,7 +249,7 @@
if (!strcmp("<backtrace>", format) &&
verbose_level() <= _LOG_DEBUG)
break;
- if (internal_error || verbose_level() >= _LOG_DEBUG) {
+ if (verbose_level() >= _LOG_DEBUG) {
fprintf(stderr, "%s%s%s", locn, log_command_name(),
_msg_prefix);
if (_indent)
@@ -256,7 +260,7 @@
break;
case _LOG_INFO:
- if (internal_error || verbose_level() >= _LOG_INFO) {
+ if (verbose_level() >= _LOG_INFO) {
fprintf(stderr, "%s%s%s", locn, log_command_name(),
_msg_prefix);
if (_indent)
@@ -266,7 +270,7 @@
}
break;
case _LOG_NOTICE:
- if (internal_error || verbose_level() >= _LOG_NOTICE) {
+ if (verbose_level() >= _LOG_NOTICE) {
fprintf(stderr, "%s%s%s", locn, log_command_name(),
_msg_prefix);
if (_indent)
@@ -276,7 +280,7 @@
}
break;
case _LOG_WARN:
- if (internal_error || verbose_level() >= _LOG_WARN) {
+ if (verbose_level() >= _LOG_WARN) {
fprintf(use_stderr ? stderr : stdout, "%s%s",
log_command_name(), _msg_prefix);
vfprintf(use_stderr ? stderr : stdout, trformat, ap);
@@ -284,7 +288,7 @@
}
break;
case _LOG_ERR:
- if (internal_error || verbose_level() >= _LOG_ERR) {
+ if (verbose_level() >= _LOG_ERR) {
fprintf(stderr, "%s%s%s", locn, log_command_name(),
_msg_prefix);
vfprintf(stderr, trformat, ap);
@@ -293,7 +297,7 @@
break;
case _LOG_FATAL:
default:
- if (internal_error || verbose_level() >= _LOG_FATAL) {
+ if (verbose_level() >= _LOG_FATAL) {
fprintf(stderr, "%s%s%s", locn, log_command_name(),
_msg_prefix);
vfprintf(stderr, trformat, ap);
@@ -304,7 +308,7 @@
va_end(ap);
}
- if (internal_error)
+ if (fatal_internal_error)
abort();
if (level > debug_level())
More information about the lvm-devel
mailing list