]> git.sesse.net Git - cubemap/blobdiff - log.cpp
Drop NO_LEVEL; it does not look very pretty now.
[cubemap] / log.cpp
diff --git a/log.cpp b/log.cpp
index ba05a64d1fe5236c4dfe370a947254587c56cf37..0b3db4fdf2c0d7c363e204951a9539a73e0fec9b 100644 (file)
--- a/log.cpp
+++ b/log.cpp
@@ -1,9 +1,11 @@
 #include "log.h"
 
 #include <stdio.h>
+#include <string.h>
 #include <stdarg.h>
 #include <syslog.h>
 #include <assert.h>
+#include <errno.h>
 #include <string>
 #include <vector>
 
@@ -69,12 +71,8 @@ void log(LogLevel log_level, const char *fmt, ...)
        int syslog_level;
 
        switch (log_level) {
-       case NO_LEVEL:
-               log_level_str = "";
-               syslog_level = LOG_INFO;
-               break;
        case INFO:
-               log_level_str = "INFO: ";
+               log_level_str = "INFO:    ";
                syslog_level = LOG_INFO;
                break;
        case WARNING:
@@ -82,7 +80,7 @@ void log(LogLevel log_level, const char *fmt, ...)
                syslog_level = LOG_WARNING;
                break;
        case ERROR:
-               log_level_str = "ERROR: ";
+               log_level_str = "ERROR:   ";
                syslog_level = LOG_ERR;
                break;
        default:
@@ -110,3 +108,9 @@ void log(LogLevel log_level, const char *fmt, ...)
                }
        }
 }
+
+void log_perror(const char *msg)
+{
+       char errbuf[4096];
+       log(ERROR, "%s: %s", msg, strerror_r(errno, errbuf, sizeof(errbuf)));
+}