diff options
| author | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-23 17:19:06 +0000 |
|---|---|---|
| committer | Valery Febvre <vfebvre at easter-eggs.com> | 2004-07-23 17:19:06 +0000 |
| commit | e1d4bd8f50a04b352a9c4296d84e1ce2bc1e52dd (patch) | |
| tree | 10acc004ccd8de3d452dcf57ed16098aae21ed20 | |
| parent | ae11abae6a93fbbd90b87c6d2ae6ac320cb3e1a1 (diff) | |
| download | lasso-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.c | 2 | ||||
| -rw-r--r-- | lasso/xml/debug.c | 96 | ||||
| -rw-r--r-- | lasso/xml/debug.h | 10 |
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 */ |
