diff options
author | Eugenio Favalli <elvenprogrammer@gmail.com> | 2004-12-11 17:39:25 +0000 |
---|---|---|
committer | Eugenio Favalli <elvenprogrammer@gmail.com> | 2004-12-11 17:39:25 +0000 |
commit | 3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2 (patch) | |
tree | 81fc3e70dc98a9ed9f1f86614df8b886508abcfc /src/log.cpp | |
parent | af7060d953e1c0f54a7d5bf46894191d41d853ff (diff) | |
download | mana-client-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.gz mana-client-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.bz2 mana-client-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.xz mana-client-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.zip |
Core sprite classes of the new graphic engine
Diffstat (limited to 'src/log.cpp')
-rw-r--r-- | src/log.cpp | 44 |
1 files changed, 13 insertions, 31 deletions
diff --git a/src/log.cpp b/src/log.cpp index 4cc48d1f..710a1fc3 100644 --- a/src/log.cpp +++ b/src/log.cpp @@ -21,42 +21,36 @@ #include "log.h" +int warning_n; // Keep warning number FILE* logfile; #define LOG_FILE "./docs/tmw.log" -/* - * Initializes log file by opening it for writing. - */ + void init_log() { logfile = fopen(LOG_FILE, "w"); if (!logfile) { printf("Warning: error while opening log file.\n"); } + warning_n = 0; } -/* - * Enter a message in the log with a certain category. The message will be - * timestamped. - */ void log(const char *category, const char *log_text, ...) { if (logfile) { char* buf = new char[1024]; - va_list ap; - time_t t; - // Use a temporary buffer to fill in the variables + va_list ap; va_start(ap, log_text); vsprintf(buf, log_text, ap); va_end(ap); - // Get the current system time + time_t t; time(&t); - // Print the log entry - fprintf(logfile, + fprintf( + logfile, "[%s%d:%s%d:%s%d] %s: %s\n", (((t / 60) / 60) % 24 < 10) ? "0" : "", (int)(((t / 60) / 60) % 24), @@ -66,40 +60,28 @@ void log(const char *category, const char *log_text, ...) { (int)(t % 60), category, buf ); - - // Flush the log file fflush(logfile); - // Delete temporary buffer delete[] buf; } } -/* - * Log an error and quit. The error will pop-up in Windows and will be printed - * to standard error everywhere else. - */ -void error(const char *error_text) { - log("Error", error_text); + +void error(string error_text) { + log("Error", error_text.c_str()); #ifdef WIN32 - MessageBox(NULL, error_text, "Error", MB_ICONERROR|MB_OK); + MessageBox(NULL, error_text.c_str(), "Error", MB_ICONERROR|MB_OK); #else - fprintf(stderr, "Error: %s\n", error_text); + printf("Error: %s", error_text); #endif - exit(1); + //exit(1); } -/* - * Shortcut to log a warning. - */ void warning(const char *warning_text) { log("Warning", warning_text); } -/* - * Shortcut to log a status update, will only really be logged in debug mode. - */ void status(const char *status_text) { #ifdef DEBUG log("Status", status_text); |