]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/lib/message.c
Strip pathname portion off all message routines that print filename:line.
[bacula/bacula] / bacula / src / lib / message.c
index 1bd6f8eb90e438adebcb653904a94d82a3c2e097..44070a79e5837486f0853d2b666b891ffe0ec6f4 100755 (executable)
@@ -773,9 +773,14 @@ d_msg(const char *file, int line, int level, const char *fmt,...)
           /* visual studio passes the whole path to the file as well
            * which makes for very long lines
            */
-          const char *f = strrchr(file, '\\');
-          if (f) file = f + 1;
-          len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, file, line);
+          const char *basename;
+
+          if ((basename = strrchr(file, '\\')) == NULL) {
+             basename = file;
+          } else {
+             basename++;
+          }
+          len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, basename, line);
        } else {
           len = 0;
        }
@@ -850,7 +855,14 @@ p_msg(const char *file, int line, int level, const char *fmt,...)
 
 #ifdef FULL_LOCATION
     if (level >= 0) {
-       len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, file, line);
+       const char *basename;
+
+       if ((basename = strrchr(file, '\\')) == NULL) {
+          basename = file;
+       } else {
+          basename++;
+       }
+       len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, basename, line);
     } else {
        len = 0;
     }
@@ -895,7 +907,14 @@ t_msg(const char *file, int line, int level, const char *fmt,...)
 
 #ifdef FULL_LOCATION
        if (details) {
-          len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, file, line);
+          const char *basename;
+
+          if ((basename = strrchr(file, '\\')) == NULL) {
+             basename = file;
+          } else {
+             basename++;
+          }
+          len = bsnprintf(buf, sizeof(buf), "%s: %s:%d ", my_name, basename, line);
        } else {
           len = 0;
        }
@@ -926,6 +945,14 @@ e_msg(const char *file, int line, int type, int level, const char *fmt,...)
     va_list   arg_ptr;
     int len;
 
+    const char *basename;
+
+    if ((basename = strrchr(file, '\\')) == NULL) {
+       basename = file;
+    } else {
+       basename++;
+    }
+
     /*
      * Check if we have a message destination defined.
      * We always report M_ABORT and M_ERROR_TERM
@@ -937,23 +964,23 @@ e_msg(const char *file, int line, int type, int level, const char *fmt,...)
     switch (type) {
     case M_ABORT:
        len = bsnprintf(buf, sizeof(buf), _("%s: ABORTING due to ERROR in %s:%d\n"),
-               my_name, file, line);
+               my_name, basename, line);
        break;
     case M_ERROR_TERM:
        len = bsnprintf(buf, sizeof(buf), _("%s: ERROR TERMINATION at %s:%d\n"),
-               my_name, file, line);
+               my_name, basename, line);
        break;
     case M_FATAL:
        if (level == -1)            /* skip details */
           len = bsnprintf(buf, sizeof(buf), _("%s: Fatal Error because: "), my_name);
        else
-          len = bsnprintf(buf, sizeof(buf), _("%s: Fatal Error at %s:%d because:\n"), my_name, file, line);
+          len = bsnprintf(buf, sizeof(buf), _("%s: Fatal Error at %s:%d because:\n"), my_name, basename, line);
        break;
     case M_ERROR:
        if (level == -1)            /* skip details */
           len = bsnprintf(buf, sizeof(buf), _("%s: ERROR: "), my_name);
        else
-          len = bsnprintf(buf, sizeof(buf), _("%s: ERROR in %s:%d "), my_name, file, line);
+          len = bsnprintf(buf, sizeof(buf), _("%s: ERROR in %s:%d "), my_name, basename, line);
        break;
     case M_WARNING:
        len = bsnprintf(buf, sizeof(buf), _("%s: Warning: "), my_name);
@@ -1087,9 +1114,16 @@ void j_msg(const char *file, int line, JCR *jcr, int type, time_t mtime, const c
    va_list   arg_ptr;
    int i, len, maxlen;
    POOLMEM *pool_buf;
+   const char *basename;
+
+   if ((basename = strrchr(file, '\\')) == NULL) {
+      basename = file;
+   } else {
+      basename++;
+   }
 
    pool_buf = get_pool_memory(PM_EMSG);
-   i = Mmsg(pool_buf, "%s:%d ", file, line);
+   i = Mmsg(pool_buf, "%s:%d ", basename, line);
 
    for (;;) {
       maxlen = sizeof_pool_memory(pool_buf) - i - 1;
@@ -1116,7 +1150,15 @@ int m_msg(const char *file, int line, POOLMEM **pool_buf, const char *fmt, ...)
    va_list   arg_ptr;
    int i, len, maxlen;
 
-   i = sprintf(*pool_buf, "%s:%d ", file, line);
+   const char *basename;
+
+   if ((basename = strrchr(file, '\\')) == NULL) {
+      basename = file;
+   } else {
+      basename++;
+   }
+
+   i = sprintf(*pool_buf, "%s:%d ", basename, line);
 
    for (;;) {
       maxlen = sizeof_pool_memory(*pool_buf) - i - 1;
@@ -1137,7 +1179,15 @@ int m_msg(const char *file, int line, POOLMEM *&pool_buf, const char *fmt, ...)
    va_list   arg_ptr;
    int i, len, maxlen;
 
-   i = sprintf(pool_buf, "%s:%d ", file, line);
+   const char *basename;
+
+   if ((basename = strrchr(file, '\\')) == NULL) {
+      basename = file;
+   } else {
+      basename++;
+   }
+
+   i = sprintf(pool_buf, "%s:%d ", basename, line);
 
    for (;;) {
       maxlen = sizeof_pool_memory(pool_buf) - i - 1;