NULL /* firstChild */, \
NULL /* nextSibling */, \
#catName, \
+ 0 /*initialized */, \
xbt_log_priority_uninitialized /* threshold */, \
1 /* isThreshInherited */, \
NULL /* appender */, \
xbt_log_category_t firstChild;
xbt_log_category_t nextSibling;
const char *name;
+ int initialized;
int threshold;
int isThreshInherited;
xbt_log_appender_t appender;
*
* NOTES
* First part is a compile-time constant.
- * Call to _log_initCat only happens once.
+ * Call to xbt_log_cat_init only happens once.
*/
#define _XBT_LOG_ISENABLEDV(catv, priority) \
(priority >= XBT_LOG_STATIC_THRESHOLD \
- && priority >= catv.threshold \
- && (catv.threshold != xbt_log_priority_uninitialized \
- || _xbt_log_cat_init(&catv, priority)) )
+ && (catv.initialized || _xbt_log_cat_init(&catv, priority)) \
+ && priority >= catv.threshold)
/*
* Internal Macros
fprintf(stderr,"%s:%d:\n" f, __FILE__, __LINE__, __VA_ARGS__)
# define XBT_LOG(...) XBT_CLOG(0, __VA_ARGS__)
#else
-# include <string.h> /* memset */
# define XBT_CLOG_(catv, prio, ...) \
do { \
if (_XBT_LOG_ISENABLEDV(catv, prio)) { \