All pastes #542680 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-06-05 21:56 UTC
rendered paste body
Index: error.h
===================================================================
RCS file: /cvsroot/alcc/alcc/error.h,v
retrieving revision 1.9
diff -u -r1.9 error.h
--- error.h     15 Jan 2007 03:19:24 -0000      1.9
+++ error.h     5 Jun 2007 21:53:39 -0000
@@ -22,10 +22,10 @@
 class LegacyError
 {
 public:
        char            message[256];
        int             errorCode;
 
-       LegacyError(char *msg, int err)
+       LegacyError(const char *msg, int err)
        {
                strncpy(message, msg, 255);
                errorCode = err;
Index: log.cpp
===================================================================
RCS file: /cvsroot/alcc/alcc/log.cpp,v
retrieving revision 1.5
diff -u -r1.5 log.cpp
--- log.cpp     15 Jan 2007 03:19:24 -0000      1.5
+++ log.cpp     5 Jun 2007 21:53:45 -0000
@@ -71,7 +71,24 @@
 {
        time_t          t;
        char            formattedTime[26];          // See ctime(3)
-       char           *level;
+       int             level;
+       typedef enum {
+               lvl_notice = 0,
+               lvl_warning,
+               lvl_error,
+               lvl_critical,
+               lvl_default
+       } lvl_t;
+       struct {
+               lvl_t           num;
+               const char     *name;
+       } levels[] = {
+               { lvl_notice,   "NOTICE" },
+               { lvl_warning,  "WARNING" },
+               { lvl_error,    "ERROR" },
+               { lvl_critical, "CRITICAL" },
+               { lvl_default,  "***" },
+       };
 
        if (lvl >= logLevel && logLevel != NONE &&
                output != NULL)
@@ -83,23 +100,24 @@
                switch (lvl)
                {
                case NOTICE:
-                       level = "NOTICE";
+                       level = lvl_notice;
                        break;
                case WARNING:
-                       level = "WARNING";
+                       level = lvl_warning;
                        break;
                case ERROR:
-                       level = "ERROR";
+                       level = lvl_error;
                        break;
                case CRITICAL:
-                       level = "CRITICAL";
+                       level = lvl_critical;
                        break;
                default:
-                       level = "***";
+                       level = lvl_default;
                }
 
                pthread_mutex_lock(&mutex);
-               fprintf(output, "[%s] %s: %s\n", formattedTime, level, msg);
+               fprintf(output, "[%s] %s: %s\n", formattedTime,
+                               levels[level].name, msg);
                pthread_mutex_unlock(&mutex);
        }
 }