From a78b18e291bd7f55b176958074f41327f2d0e196 Mon Sep 17 00:00:00 2001 From: William Hubbs Date: Wed, 28 Aug 2013 14:23:46 -0500 Subject: libeinfo: suppress output for eerror* functions This makes the eerror* functions honor the EINFO_QUIET environment variable like the einfo* and ewarn* functions. X-Gentoo-Bug: 482396 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=482396 --- man/einfo.3 | 1 + src/libeinfo/libeinfo.c | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/man/einfo.3 b/man/einfo.3 index 0af12a8..31c4b68 100644 --- a/man/einfo.3 +++ b/man/einfo.3 @@ -107,6 +107,7 @@ respectively, but only work when is true. You can also make the .Fn einfo , .Fn ewarn , +.Fn eerror , and .Fn ebegin functions silent by setting diff --git a/src/libeinfo/libeinfo.c b/src/libeinfo/libeinfo.c index d27bdb2..7b1f2da 100644 --- a/src/libeinfo/libeinfo.c +++ b/src/libeinfo/libeinfo.c @@ -674,6 +674,8 @@ eerrorn(const char *EINFO_RESTRICT fmt, ...) int retval; va_list ap; + if (!fmt || is_quiet()) + return 0; va_start(ap, fmt); retval = _eerrorvn(fmt, ap); va_end(ap); @@ -740,7 +742,7 @@ eerror(const char *EINFO_RESTRICT fmt, ...) int retval; va_list ap; - if (!fmt) + if (!fmt || is_quiet()) return 0; va_start(ap, fmt); elogv(LOG_ERR, fmt, ap); @@ -757,7 +759,7 @@ eerrorx(const char *EINFO_RESTRICT fmt, ...) { va_list ap; - if (fmt) { + if (fmt && !is_quiet()) { va_start(ap, fmt); elogv(LOG_ERR, fmt, ap); _eerrorvn(fmt, ap); -- cgit v1.2.3