forked from external/yambar
log: LOG_ERRNO_P(), like LOG_ERRNO(), except user provides errno value
This commit is contained in:
parent
4c4f0ce7a0
commit
0ea4e5a2d8
2 changed files with 18 additions and 0 deletions
10
log.c
10
log.c
|
@ -63,3 +63,13 @@ void log_errno(enum log_class log_class, const char *module,
|
||||||
_log(log_class, module, file, lineno, fmt, errno, ap);
|
_log(log_class, module, file, lineno, fmt, errno, ap);
|
||||||
va_end(ap);
|
va_end(ap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void log_errno_provided(enum log_class log_class, const char *module,
|
||||||
|
const char *file, int lineno, int _errno,
|
||||||
|
const char *fmt, ...)
|
||||||
|
{
|
||||||
|
va_list ap;
|
||||||
|
va_start(ap, fmt);
|
||||||
|
_log(log_class, module, file, lineno, fmt, _errno, ap);
|
||||||
|
va_end(ap);
|
||||||
|
}
|
||||||
|
|
8
log.h
8
log.h
|
@ -10,10 +10,18 @@ void log_errno(enum log_class log_class, const char *module,
|
||||||
const char *file, int lineno,
|
const char *file, int lineno,
|
||||||
const char *fmt, ...) __attribute__((format (printf, 5, 6)));
|
const char *fmt, ...) __attribute__((format (printf, 5, 6)));
|
||||||
|
|
||||||
|
void log_errno_provided(
|
||||||
|
enum log_class log_class, const char *module,
|
||||||
|
const char *file, int lineno, int _errno,
|
||||||
|
const char *fmt, ...) __attribute__((format (printf, 6, 7)));
|
||||||
|
|
||||||
#define LOG_ERR(fmt, ...) \
|
#define LOG_ERR(fmt, ...) \
|
||||||
log_msg(LOG_CLASS_ERROR, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
log_msg(LOG_CLASS_ERROR, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
||||||
#define LOG_ERRNO(fmt, ...) \
|
#define LOG_ERRNO(fmt, ...) \
|
||||||
log_errno(LOG_CLASS_ERROR, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
log_errno(LOG_CLASS_ERROR, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
||||||
|
#define LOG_ERRNO_P(fmt, _errno, ...) \
|
||||||
|
log_errno_provided(LOG_CLASS_ERROR, LOG_MODULE, __FILE__, __LINE__, \
|
||||||
|
_errno, fmt, ## __VA_ARGS__)
|
||||||
#define LOG_WARN(fmt, ...) \
|
#define LOG_WARN(fmt, ...) \
|
||||||
log_msg(LOG_CLASS_WARNING, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
log_msg(LOG_CLASS_WARNING, LOG_MODULE, __FILE__, __LINE__, fmt, ## __VA_ARGS__)
|
||||||
#define LOG_INFO(fmt, ...) \
|
#define LOG_INFO(fmt, ...) \
|
||||||
|
|
Loading…
Add table
Reference in a new issue