summaryrefslogtreecommitdiff
path: root/src/log.cpp
diff options
context:
space:
mode:
authorEugenio Favalli <elvenprogrammer@gmail.com>2004-12-11 17:39:25 +0000
committerEugenio Favalli <elvenprogrammer@gmail.com>2004-12-11 17:39:25 +0000
commit3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2 (patch)
tree81fc3e70dc98a9ed9f1f86614df8b886508abcfc /src/log.cpp
parentaf7060d953e1c0f54a7d5bf46894191d41d853ff (diff)
downloadmana-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.gz
mana-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.bz2
mana-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.tar.xz
mana-3fcde31ec23e0bb8f5403e2dcba6ac030fb310a2.zip
Core sprite classes of the new graphic engine
Diffstat (limited to 'src/log.cpp')
-rw-r--r--src/log.cpp44
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);