Imported Upstream version 0.9.8
[sven/exfat-utils.git] / libexfat / log.c
index 7a2b35d90005f172605e3286a7dfb3f288cb65d4..8b589b406d238ee6388b631455eda37a72cbafe5 100644 (file)
@@ -2,7 +2,7 @@
        log.c (02.09.09)
        exFAT file system implementation library.
 
-       Copyright (C) 2009, 2010  Andrew Nayenko
+       Copyright (C) 2010-2012  Andrew Nayenko
 
        This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
@@ -21,6 +21,7 @@
 #include "exfat.h"
 #include <stdarg.h>
 #include <syslog.h>
+#include <unistd.h>
 
 int exfat_errors;
 
@@ -40,7 +41,8 @@ void exfat_bug(const char* format, ...)
        va_end(ap);
        fputs(".\n", stderr);
 
-       vsyslog(LOG_CRIT, format, aq);
+       if (!isatty(STDERR_FILENO))
+               vsyslog(LOG_CRIT, format, aq);
        va_end(aq);
 
        abort();
@@ -63,7 +65,8 @@ void exfat_error(const char* format, ...)
        va_end(ap);
        fputs(".\n", stderr);
 
-       vsyslog(LOG_ERR, format, aq);
+       if (!isatty(STDERR_FILENO))
+               vsyslog(LOG_ERR, format, aq);
        va_end(aq);
 }
 
@@ -84,7 +87,8 @@ void exfat_warn(const char* format, ...)
        va_end(ap);
        fputs(".\n", stderr);
 
-       vsyslog(LOG_WARNING, format, aq);
+       if (!isatty(STDERR_FILENO))
+               vsyslog(LOG_WARNING, format, aq);
        va_end(aq);
 }