ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/common/logger.C
(Generate patch)

Comparing deliantra/server/common/logger.C (file contents):
Revision 1.6 by pippijn, Mon Dec 11 19:46:46 2006 UTC vs.
Revision 1.8 by pippijn, Sat Jan 6 14:42:29 2007 UTC

1/* 1/*
2 CrossFire, A Multiplayer game for X-windows 2 CrossFire, A Multiplayer game for X-windows
3 3
4 Copyright (C) 2005, 2006, 2007 Marc Lehmann & Crossfire+ Development Team
4 Copyright (C) 2002 Mark Wedel & Crossfire Development Team 5 Copyright (C) 2002 Mark Wedel & Crossfire Development Team
5 Copyright (C) 1992 Frank Tore Johansen 6 Copyright (C) 1992 Frank Tore Johansen
6 7
7 This program is free software; you can redistribute it and/or modify 8 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 9 it under the terms of the GNU General Public License as published by
36 */ 37 */
37 38
38void 39void
39LOG (LogLevel logLevel, const char *format, ...) 40LOG (LogLevel logLevel, const char *format, ...)
40{ 41{
41 char buf[20480]; /* This needs to be really really big - larger
42 * than any other buffer, since that buffer may
43 * need to be put in this one.
44 */
45 char tbuf[20480];
46
47 time_t curtime = time (NULL);
48 struct tm *ptime = localtime (&curtime);
49
50 strftime (tbuf, 256, "%Y-%m-%d %H:%M:%S ", ptime);
51
52 va_list ap;
53
54 va_start (ap, format);
55
56 buf[0] = '\0';
57 if (logLevel <= settings.debug) 42 if (logLevel <= settings.debug)
58 { 43 {
44 char buf[20480]; /* This needs to be really really big - larger
45 * than any other buffer, since that buffer may
46 * need to be put in this one.
47 */
48 char tbuf[20480];
49
50 time_t curtime = time (NULL);
51 struct tm *ptime = localtime (&curtime);
52
53 strftime (tbuf, 256, "%Y-%m-%d %H:%M:%S ", ptime);
54
55 va_list ap;
56
57 va_start (ap, format);
58
59 vsnprintf (buf, sizeof (buf), format, ap); 59 vsnprintf (buf, sizeof (buf), format, ap);
60 strncat (tbuf, buf, 20460); 60 strncat (tbuf, buf, 20460);
61 fputs (tbuf, logfile); 61 fputs (tbuf, logfile);
62 fputs (tbuf, stderr);
63
64 va_end (ap);
62 } 65 }
63 if (!exiting && !trying_emergency_save && logLevel == llevError && ++nroferrors > MAX_ERRORS)
64 {
65 exiting = 1;
66 if (!trying_emergency_save)
67 emergency_save (0);
68 }
69 va_end (ap);
70} 66}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines