rayzor
annotate src/logger.c @ 9:70e332156d02
moving along
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Thu, 10 Apr 2014 02:31:31 +0300 |
parents | a826bf0fb169 |
children |
rev | line source |
---|---|
nuclear@1 | 1 #include <stdio.h> |
nuclear@1 | 2 #include <stdarg.h> |
nuclear@1 | 3 #include "logger.h" |
nuclear@1 | 4 |
nuclear@1 | 5 #define LOGFNAME "rayzor.log" |
nuclear@1 | 6 |
nuclear@1 | 7 static FILE *logfile; |
nuclear@1 | 8 |
nuclear@6 | 9 void logger_output(FILE *fp) |
nuclear@6 | 10 { |
nuclear@6 | 11 if(logfile) fclose(logfile); |
nuclear@6 | 12 logfile = fp; |
nuclear@6 | 13 } |
nuclear@6 | 14 |
nuclear@1 | 15 void printlog(const char *fmt, ...) |
nuclear@1 | 16 { |
nuclear@1 | 17 va_list ap; |
nuclear@1 | 18 |
nuclear@1 | 19 if(!logfile) { |
nuclear@1 | 20 if(!(logfile = fopen(LOGFNAME, "w"))) { |
nuclear@1 | 21 return; |
nuclear@1 | 22 } |
nuclear@1 | 23 setvbuf(logfile, 0, _IOLBF, 0); |
nuclear@1 | 24 } |
nuclear@1 | 25 |
nuclear@1 | 26 va_start(ap, fmt); |
nuclear@1 | 27 vfprintf(logfile, fmt, ap); |
nuclear@1 | 28 va_end(ap); |
nuclear@1 | 29 } |