[git commit] libbb: restore special handling of nomsg errors

Denys Vlasenko vda.linux at googlemail.com
Sun Jun 26 15:17:02 UTC 2022


commit: https://git.busybox.net/busybox/commit/?id=95fec31be601bfdced6bed7007a33b26e968e0db
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

The functions bb_perror_nomsg() and bb_perror_nomsg_and_die() are
used to print error messages where no specific information is
available.  For example:

   $ busybox mktemp -p /
   mktemp: (null): Permission denied

mktemp(3) doesn't tell us the name of the file it tried to create.

However, printing '(null)' is a regression introduced by commit
6937487be (libbb: reduce the overhead of single parameter bb_error_msg()
calls).  Restore the previous behaviour by reverting the changes to
the two functions mentioned:

   $ busybox mktemp -p /
   mktemp: Permission denied

function                                             old     new   delta
bb_perror_nomsg_and_die                                7      14      +7
bb_perror_nomsg                                        7      14      +7
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 14/0)               Total: 14 bytes

Signed-off-by: Ron Yorston <rmy at pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 libbb/perror_nomsg.c         | 4 ++--
 libbb/perror_nomsg_and_die.c | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/libbb/perror_nomsg.c b/libbb/perror_nomsg.c
index d7d53de44..a2a11cc8e 100644
--- a/libbb/perror_nomsg.c
+++ b/libbb/perror_nomsg.c
@@ -12,11 +12,11 @@
  * instead of including libbb.h */
 //#include "libbb.h"
 #include "platform.h"
-extern void bb_simple_perror_msg(const char *s) FAST_FUNC;
+extern void bb_perror_msg(const char *s, ...) FAST_FUNC;
 
 /* suppress gcc "no previous prototype" warning */
 void FAST_FUNC bb_perror_nomsg(void);
 void FAST_FUNC bb_perror_nomsg(void)
 {
-	bb_simple_perror_msg(0);
+	bb_perror_msg(0);
 }
diff --git a/libbb/perror_nomsg_and_die.c b/libbb/perror_nomsg_and_die.c
index bea5f25a5..543ff5178 100644
--- a/libbb/perror_nomsg_and_die.c
+++ b/libbb/perror_nomsg_and_die.c
@@ -12,11 +12,11 @@
  * instead of including libbb.h */
 //#include "libbb.h"
 #include "platform.h"
-extern void bb_simple_perror_msg_and_die(const char *s) FAST_FUNC;
+extern void bb_perror_msg_and_die(const char *s, ...) FAST_FUNC;
 
 /* suppress gcc "no previous prototype" warning */
 void FAST_FUNC bb_perror_nomsg_and_die(void);
 void FAST_FUNC bb_perror_nomsg_and_die(void)
 {
-	bb_simple_perror_msg_and_die(0);
+	bb_perror_msg_and_die(0);
 }


More information about the busybox-cvs mailing list