mirror of
https://github.com/leahneukirchen/cwm.git
synced 2023-08-10 21:13:12 +03:00
Add a simple debug logging mechanism.
This commit is contained in:
parent
9bf750b054
commit
34e15dbd7a
10
calmwm.h
10
calmwm.h
@ -31,6 +31,13 @@
|
|||||||
#include <X11/extensions/Xrandr.h>
|
#include <X11/extensions/Xrandr.h>
|
||||||
#include <X11/keysym.h>
|
#include <X11/keysym.h>
|
||||||
|
|
||||||
|
/* #define DEBUG */
|
||||||
|
#ifdef DEBUG
|
||||||
|
#define DPRINTF(...) log_debug(__func__, __VA_ARGS__)
|
||||||
|
#else
|
||||||
|
#define DPRINTF(...) do {} while (0)
|
||||||
|
#endif /* DEBUG */
|
||||||
|
|
||||||
#undef MIN
|
#undef MIN
|
||||||
#undef MAX
|
#undef MAX
|
||||||
#define MIN(x, y) ((x) < (y) ? (x) : (y))
|
#define MIN(x, y) ((x) < (y) ? (x) : (y))
|
||||||
@ -584,6 +591,9 @@ void xu_ewmh_restore_net_wm_state(struct client_ctx *);
|
|||||||
char *u_argv(char * const *);
|
char *u_argv(char * const *);
|
||||||
void u_exec(char *);
|
void u_exec(char *);
|
||||||
void u_spawn(char *);
|
void u_spawn(char *);
|
||||||
|
void log_debug(const char *, const char *, ...)
|
||||||
|
__attribute__((__format__ (printf, 2, 3)))
|
||||||
|
__attribute__((__nonnull__ (2)));
|
||||||
|
|
||||||
void *xcalloc(size_t, size_t);
|
void *xcalloc(size_t, size_t);
|
||||||
void *xmalloc(size_t);
|
void *xmalloc(size_t);
|
||||||
|
30
util.c
30
util.c
@ -31,6 +31,8 @@
|
|||||||
|
|
||||||
#include "calmwm.h"
|
#include "calmwm.h"
|
||||||
|
|
||||||
|
static void log_msg(const char *, va_list);
|
||||||
|
|
||||||
void
|
void
|
||||||
u_spawn(char *argstr)
|
u_spawn(char *argstr)
|
||||||
{
|
{
|
||||||
@ -104,3 +106,31 @@ u_argv(char * const *argv)
|
|||||||
}
|
}
|
||||||
return(p);
|
return(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
log_msg(const char *msg, va_list ap)
|
||||||
|
{
|
||||||
|
char *fmt;
|
||||||
|
|
||||||
|
if (asprintf(&fmt, "%s\n", msg) == -1) {
|
||||||
|
vfprintf(stderr, msg, ap);
|
||||||
|
fprintf(stderr, "\n");
|
||||||
|
} else {
|
||||||
|
vfprintf(stderr, fmt, ap);
|
||||||
|
free(fmt);
|
||||||
|
}
|
||||||
|
fflush(stderr);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
log_debug(const char *func, const char *msg, ...)
|
||||||
|
{
|
||||||
|
char *fmt;
|
||||||
|
va_list ap;
|
||||||
|
|
||||||
|
va_start(ap, msg);
|
||||||
|
if (asprintf(&fmt, "%s: %s", func, msg) == -1)
|
||||||
|
exit(1);
|
||||||
|
log_msg(fmt, ap);
|
||||||
|
va_end(ap);
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user