Outlaw the setting of NULL errstrs
authorBarret Rhoden <brho@cs.berkeley.edu>
Sat, 13 Feb 2016 19:12:01 +0000 (14:12 -0500)
committerBarret Rhoden <brho@cs.berkeley.edu>
Sun, 14 Feb 2016 14:03:22 +0000 (09:03 -0500)
This will catch them if we try to use them.  O/w we'll have to rely on
other methods (code review/tools) to find them.

Maybe there's an argument to be made for a simple error(EFOO, 0),
where you just don't want to bother making a string.  Then for now you
can use ERROR_FIXME.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
kern/src/syscall.c

index b9e99dc..c9c9ae3 100644 (file)
@@ -355,6 +355,7 @@ void set_errstr(const char *fmt, ...)
 {
        va_list ap;
 
+       assert(fmt);
        va_start(ap, fmt);
        vset_errstr(fmt, ap);
        va_end(ap);
@@ -374,8 +375,9 @@ void set_error(int error, const char *fmt, ...)
 
        set_errno(error);
 
+       assert(fmt);
        va_start(ap, fmt);
-       vset_errstr(fmt != NULL ? fmt: errno_to_string(error), ap);
+       vset_errstr(fmt, ap);
        va_end(ap);
 }