diff --git a/man/einfo.3 b/man/einfo.3 index 0af12a8b..31c4b68c 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 d27bdb2f..7b1f2da5 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);