summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValery Febvre <vfebvre at easter-eggs.com>2004-07-23 17:19:06 +0000
committerValery Febvre <vfebvre at easter-eggs.com>2004-07-23 17:19:06 +0000
commite1d4bd8f50a04b352a9c4296d84e1ce2bc1e52dd (patch)
tree10acc004ccd8de3d452dcf57ed16098aae21ed20
parentae11abae6a93fbbd90b87c6d2ae6ac320cb3e1a1 (diff)
downloadlasso-e1d4bd8f50a04b352a9c4296d84e1ce2bc1e52dd.tar.gz
lasso-e1d4bd8f50a04b352a9c4296d84e1ce2bc1e52dd.tar.xz
lasso-e1d4bd8f50a04b352a9c4296d84e1ce2bc1e52dd.zip
New log/debug system
It uses g_log() function now (from glib) debug macro has been split into 2 macros: debug(format, args) : for debug message only, activated if LASSO_DEBUG flag is defined message(level, format, args) : level is a GLogLevelFlags (enum)
-rw-r--r--lasso/id-ff/user.c2
-rw-r--r--lasso/xml/debug.c96
-rw-r--r--lasso/xml/debug.h10
3 files changed, 61 insertions, 47 deletions
diff --git a/lasso/id-ff/user.c b/lasso/id-ff/user.c
index 58ccff6e..817c0cbb 100644
--- a/lasso/id-ff/user.c
+++ b/lasso/id-ff/user.c
@@ -261,7 +261,7 @@ lasso_user_get_identity(LassoUser *user,
id = (LassoIdentity*)g_hash_table_lookup(user->identities, remote_providerID);
if (id == NULL) {
- debug(WARNING, "No Identity found with remote ProviderID = %s\n", remote_providerID);
+ message(G_LOG_LEVEL_INFO, "No Identity found with remote ProviderID = %s\n", remote_providerID);
}
return(id);
diff --git a/lasso/xml/debug.c b/lasso/xml/debug.c
index b65d9b49..cc98d23a 100644
--- a/lasso/xml/debug.c
+++ b/lasso/xml/debug.c
@@ -30,21 +30,21 @@
#include <lasso/xml/debug.h>
-#define normal "\033[m"
-#define red "\033[31m"
-#define green "\033[32m"
-#define yellow "\033[33m"
-#define blue "\033[34m"
+/* #define normal "\033[m" */
+/* #define red "\033[31m" */
+/* #define green "\033[32m" */
+/* #define yellow "\033[33m" */
+/* #define blue "\033[34m" */
int debug_line;
char debug_filename[512];
char debug_function[512];
-static const char *levels[4] = {
- "DEBUG:",
- "INFO:",
- "WARNING:",
- "ERROR:"
-};
+/* static const char *levels[4] = { */
+/* "DEBUG:", */
+/* "INFO:", */
+/* "WARNING:", */
+/* "ERROR:" */
+/* }; */
void
set_debug_info(int line,
@@ -57,21 +57,20 @@ set_debug_info(int line,
}
void
-_debug(unsigned int level,
- const char *format, ...)
+_debug(GLogLevelFlags level,
+ const char *format, ...)
{
char debug_string[1024];
- char new_debug_string[2048];
time_t ts;
char date[20];
- char *color = NULL;
-
va_list args;
+ /* char new_debug_string[2048]; */
+ /* char *color = NULL; */
- if ((level < 0) || (level > 3)) {
- printf("DEBUG LEVEL level=%d, must be 0<=x<=3 !!!\n", level);
- return;
- }
+ /* if ((level < 0) || (level > 3)) { */
+ /* printf("DEBUG LEVEL level=%d, must be 0<=x<=3 !!!\n", level); */
+ /* return; */
+ /* } */
va_start(args, format);
vsnprintf(debug_string, sizeof(debug_string), format, args);
@@ -80,30 +79,41 @@ _debug(unsigned int level,
time(&ts);
strftime(date, 20, "%d-%m-%Y %H:%M:%S", localtime(&ts));
- switch (level) {
- case ERROR:
- color = red;
- break;
- case WARNING:
- color = blue;
- break;
- case DEBUG:
- color = yellow;
- break;
- case INFO:
- color = green;
- break;
+ if (level == G_LOG_LEVEL_DEBUG) {
+ g_log("Lasso", level,
+ "%s (%s/%s:%d)\n======> %s",
+ date, debug_filename, debug_function, debug_line,
+ debug_string);
+ }
+ else {
+ g_log("Lasso", level,
+ "%s\t%s",
+ date, debug_string);
}
- sprintf(new_debug_string,
- "%s%s%s %s (%s/%s:%d)\t%s",
- color,
- levels[level],
- normal,
- date,
- debug_filename, debug_function,
- debug_line, debug_string);
+ /* switch (level) { */
+ /* case ERROR: */
+ /* color = red; */
+ /* break; */
+ /* case WARNING: */
+ /* color = blue; */
+ /* break; */
+ /* case DEBUG: */
+ /* color = yellow; */
+ /* break; */
+ /* case INFO: */
+ /* color = green; */
+ /* break; */
+ /* } */
- printf("%s", new_debug_string);
- fflush(stdout);
+ /* sprintf(new_debug_string, */
+ /* "%s%s%s %s (%s/%s:%d)\t%s", */
+ /* color, */
+ /* levels[level], */
+ /* normal, */
+ /* date, */
+ /* debug_filename, debug_function, */
+ /* debug_line, debug_string); */
+ /* printf("%s", new_debug_string); */
+ /* fflush(stdout); */
}
diff --git a/lasso/xml/debug.h b/lasso/xml/debug.h
index 53287e0b..4f344571 100644
--- a/lasso/xml/debug.h
+++ b/lasso/xml/debug.h
@@ -30,20 +30,24 @@
extern "C" {
#endif /* __cplusplus */
+#include <glib.h>
+
#define DEBUG 0 /* for debug - print only if flags LASSO_DEBUG is defined */
#define INFO 1 /* just print info */
#define WARNING 2 /* non fatal errors */
#define ERROR 3 /* criticial/fatal errors */
void set_debug_info(int line, char *filename, char *function);
-void _debug(unsigned int level, const char *format, ...);
+void _debug(GLogLevelFlags level, const char *format, ...);
#if defined LASSO_DEBUG
-#define debug set_debug_info(__LINE__, __FILE__, __FUNCTION__); _debug
+#define debug(format, args...) set_debug_info(__LINE__, __FILE__, __FUNCTION__); _debug(G_LOG_LEVEL_DEBUG, format, ##args);
#else
-#define debug(level, format, args...) if (level > DEBUG) { set_debug_info(__LINE__, __FILE__, __FUNCTION__); _debug(level, format, ##args); }
+#define debug(format, ...);
#endif
+#define message _debug
+
#ifdef __cplusplus
}
#endif /* __cplusplus */