diff --git a/headers/os/kernel/OS.h b/headers/os/kernel/OS.h index 301686e9e2..0c6855587e 100644 --- a/headers/os/kernel/OS.h +++ b/headers/os/kernel/OS.h @@ -424,9 +424,9 @@ extern void debugger(const char *message); extern int disable_debugger(int state); /* TODO: Remove. Temporary debug helper. */ -extern void debug_printf(const char *format, ...) +extern int debug_printf(const char *format, ...) __attribute__ ((format (__printf__, 1, 2))); -extern void debug_vprintf(const char *format, va_list args); +extern int debug_vprintf(const char *format, va_list args); extern void ktrace_printf(const char *format, ...) __attribute__ ((format (__printf__, 1, 2))); extern void ktrace_vprintf(const char *format, va_list args); diff --git a/src/system/libroot/os/debug.c b/src/system/libroot/os/debug.c index 2e7a5c7be6..5dc12397f8 100644 --- a/src/system/libroot/os/debug.c +++ b/src/system/libroot/os/debug.c @@ -268,27 +268,32 @@ _debuggerAssert(const char *file, int line, const char *message) return 0; } + // TODO: Remove. Temporary debug helper. // (accidently these are more or less the same as _sPrintf()) - -void +int debug_printf(const char *format, ...) { + int count; + va_list list; va_start(list, format); - debug_vprintf(format, list); + count = debug_vprintf(format, list); va_end(list); + return count; } -void + +int debug_vprintf(const char *format, va_list args) { char buffer[1024]; - vsnprintf(buffer, sizeof(buffer), format, args); + int count = vsnprintf(buffer, sizeof(buffer), format, args); _kern_debug_output(buffer); + return count; }