aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/os/log.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/os/log.c')
-rw-r--r--xorg-server/os/log.c22
1 files changed, 19 insertions, 3 deletions
diff --git a/xorg-server/os/log.c b/xorg-server/os/log.c
index 25da9f63a..de7aaade7 100644
--- a/xorg-server/os/log.c
+++ b/xorg-server/os/log.c
@@ -92,8 +92,14 @@ OR PERFORMANCE OF THIS SOFTWARE.
#ifdef WIN32
#include <process.h>
+#ifndef _MSC_VER
#define getpid(x) _getpid(x)
#endif
+#endif
+
+#ifdef _MSC_VER
+#define S_ISREG(m) (((m)&_S_IFMT) == _S_IFREG)
+#endif
#ifdef XF86BIGFONT
#include "xf86bigfontsrv.h"
@@ -364,7 +370,7 @@ LogSWrite(int verb, const char *buf, size_t len, Bool end_line)
if (verb < 0 || logFileVerbosity >= verb) {
if (inSignalContext && logFileFd >= 0) {
write(logFileFd, buf, len);
-#ifdef WIN32
+#ifndef WIN32
if (logFlush && logSync)
fsync(logFileFd);
#endif
@@ -400,7 +406,7 @@ LogSWrite(int verb, const char *buf, size_t len, Bool end_line)
void
LogVWrite(int verb, const char *f, va_list args)
{
- return LogVMessageVerb(X_NONE, verb, f, args);
+ LogVMessageVerb(X_NONE, verb, f, args);
}
void
@@ -727,7 +733,7 @@ VAuditF(const char *f, va_list args)
if (auditTimer != NULL)
TimerForce(auditTimer);
ErrorF("%s%s", prefix != NULL ? prefix : "", buf);
- strlcpy(oldbuf, buf, sizeof(oldbuf));
+ strncpy(oldbuf, buf, sizeof(oldbuf));
oldlen = len;
nrepeat = 0;
auditTimer = TimerSet(auditTimer, 0, AUDIT_TIMEOUT, AuditFlush, NULL);
@@ -735,6 +741,8 @@ VAuditF(const char *f, va_list args)
free(prefix);
}
+extern char g_FatalErrorMessage[1024];
+
void
FatalError(const char *f, ...)
{
@@ -749,8 +757,10 @@ FatalError(const char *f, ...)
va_start(args, f);
+#ifndef _MSC_VER
/* Make a copy for OsVendorFatalError */
va_copy(args2, args);
+#endif
#ifdef __APPLE__
{
@@ -762,9 +772,15 @@ FatalError(const char *f, ...)
va_end(apple_args);
}
#endif
+#ifdef WIN32
+ vsnprintf(g_FatalErrorMessage, 1024, f, args);
+#endif
VErrorF(f, args);
va_end(args);
ErrorF("\n");
+#ifdef _MSC_VER
+ va_start(args2, f);
+#endif
if (!beenhere)
OsVendorFatalError(f, args2);
va_end(args2);