{
struct log_stream *old = s->p;
log_rm_substream(def, old);
- if (old != (struct log_stream *) &log_stream_default)
+ if (old != LOG_STREAM_DEFAULT)
log_close_stream(old);
}
dup2(ls->idata, 2); // Let fd2 be an alias for the log file
{
int n = LS_GET_STRNUM(flags);
if (n < 0 || n >= log_streams_after || log_streams.ptr[n]->regnum == -1)
- return (n ? NULL : (struct log_stream *) &log_stream_default);
+ return (n ? NULL : LOG_STREAM_DEFAULT);
return log_streams.ptr[n];
}
if (!ls)
{
msg((LS_INTERNAL_MASK&cat)|L_WARN, "No log_stream with number %d! Logging to the default log.", LS_GET_STRNUM(cat));
- ls = (struct log_stream *) &log_stream_default;
+ ls = LOG_STREAM_DEFAULT;
}
/* Get the current time */
if (log_pass_msg(0, ls, &m))
{
/* Error (such as infinite loop) occurred */
- log_pass_msg(0, (struct log_stream *) &log_stream_default, &m);
+ log_pass_msg(0, LOG_STREAM_DEFAULT, &m);
}
if (m.raw_msg != msgbuf)
struct log_msg errm = *m;
errm.flags = L_ERROR | (m->flags & LS_INTERNAL_MASK);
errm.raw_msg = "Loop in the log_stream system detected.";
- log_pass_msg(0, (struct log_stream *) &log_stream_default, &errm);
+ log_pass_msg(0, LOG_STREAM_DEFAULT, &errm);
}
/* Filter by level and hook function */
/* the default logger */
extern const struct log_stream log_stream_default;
+#define LOG_STREAM_DEFAULT ((struct log_stream *) &log_stream_default)
/* A message is processed as follows:
* 1. Discard if message level not in levels