chiark / gitweb /
Some minor debianization fixes
[disorder] / lib / log.c
index 0ebda63ae5a254046280cfc7a1d53ce012f3e0d8..e0b741eb23a0ce4c9920e6d7b169b98f65b074c1 100644 (file)
--- a/lib/log.c
+++ b/lib/log.c
@@ -92,8 +92,10 @@ static void format(char buffer[], size_t bufsize, const char *fmt, va_list ap) {
   int ch;
   size_t n = 0;
   
-  if(byte_vsnprintf(t, sizeof t, fmt, ap) < 0)
-    strcpy(t, "[byte_vsnprintf failed]");
+  if(byte_vsnprintf(t, sizeof t, fmt, ap) < 0) {
+    strcpy(t, "[byte_vsnprintf failed: ");
+    strncat(t, fmt, sizeof t - strlen(t) - 1);
+  }
   p = t;
   while((ch = (unsigned char)*p++)) {
     if(ch >= ' ' && ch <= 126) {
@@ -111,6 +113,8 @@ static void format(char buffer[], size_t bufsize, const char *fmt, va_list ap) {
 }
 
 /** @brief Log to a file
+ * @param pri Message priority (as per syslog)
+ * @param msg Messagge to log
  * @param user The @c FILE @c * to log to or NULL for @c stderr
  */
 static void logfp(int pri, const char *msg, void *user) {
@@ -177,7 +181,10 @@ static void logger(int pri, const char *fmt, ...) {
 }
 
 /** @brief Format and log a message
+ * @param pri Message priority (as per syslog)
+ * @param fmt Format string
  * @param errno_value Errno value to include as a string, or 0
+ * @param ap Argument list
  */
 void elog(int pri, int errno_value, const char *fmt, va_list ap) {
   char buffer[1024];