[msvc] Update csproj files
[mono.git] / mono / utils / mono-log-windows.c
index c6ebc9ebe471261467a2dfaba68e0ecba81d00ce..ab5db470e1941f75bd2e712d119f979ffa6ff602 100644 (file)
@@ -23,7 +23,8 @@
 #include <errno.h>
 #include <time.h>
 #include <process.h>
-#include "mono-logger.h"
+#include "mono-logger-internals.h"
+#include "mono-proclib.h"
 
 static FILE *logFile = NULL;
 static void *logUserData = NULL;
@@ -85,33 +86,26 @@ mono_log_open_syslog(const char *ident, void *userData)
  *     @vargs - Variable argument list
  */
 void
-mono_log_write_syslog(const char *domain, GLogLevelFlags level, mono_bool hdr, const char *format, va_list args)
+mono_log_write_syslog(const char *domain, GLogLevelFlags level, mono_bool hdr, const char *message)
 {
        time_t t;
-       struct tm *tod;
-       char logTime[80],
-             logMessage[512];
-       pid_t pid;
-       int iLog = 0;
-       size_t nLog;
+       int pid;
+       char logTime [80];
 
        if (logFile == NULL)
-               mono_log_open_syslog(NULL, NULL);
+               logFile = stdout;
 
+       struct tm *tod;
        time(&t);
        tod = localtime(&t);
-       pid = _getpid();
-       strftime(logTime, sizeof(logTime), "%Y-%m-%d %H:%M:%S", tod);
-       iLog = snprintf(logMessage, sizeof(logMessage), "%s level[%c] mono[%d]: ",
-                       logTime,mapLogFileLevel(level),pid);
-       nLog = sizeof(logMessage) - iLog - 2;
-       iLog = vsnprintf(logMessage+iLog, nLog, format, args);
-       logMessage[iLog++] = '\n';
-       logMessage[iLog++] = 0;
-       fputs(logMessage, logFile);
+       pid = mono_process_current_pid ();
+       strftime(logTime, sizeof(logTime), "%F %T", tod);
+
+       fprintf (logFile, "%s level[%c] mono[%d]: %s\n", logTime, mapLogFileLevel (level), pid, message);
+
        fflush(logFile);
 
-       if (level == G_LOG_FLAG_FATAL)
+       if (level & G_LOG_LEVEL_ERROR)
                abort();
 }