commit - 9ec8bc72c26d942a1a1338893604cc7d5719f1b7
commit + f445665c06017f506b38d8366dd6a071f66d7521
blob - ac2b77ea98854ffeded9adc10fba1b822bb4bd0e
blob + feb7a63cad7608d95fe51ce286447a5339dc4cb6
--- bxbar.c
+++ bxbar.c
static Atom net_wm_strut_partial;
/* Forward function declarations */
+static void die(const char *fmt, ...);
+#if DEBUG_LOGGING
+static void logmsg(const char *fmt, ...);
+#endif
static void setup(void);
static void set_dock_atoms(void);
-static void logmsg(const char *fmt, ...);
static void run(void);
static int readstdin(void);
static void draw(void);
int main(void) {
setlocale(LC_CTYPE, "");
if (!(dpy = XOpenDisplay(NULL))) {
- fprintf(stderr, "bxbar: cannot open display\n");
- return 1;
+ die("bxbar: cannot open display");
}
signal(SIGHUP, SIG_IGN);
return 0;
}
+static void
+die(const char *fmt, ...)
+{
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ fputc('\n', stderr);
+ fflush(stderr);
+ cleanup(1);
+}
+
+#if DEBUG_LOGGING
+static void
+logmsg(const char *fmt, ...)
+{
+ va_list ap;
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+ fputc('\n', stderr);
+ fflush(stderr);
+}
+#else
+#define logmsg(...) ((void)0)
+#endif
+
static void setup(void) {
Colormap cmap = DefaultColormap(dpy, screen);
XColor xc;
/* Allocate background color */
if (!XParseColor(dpy, cmap, BG_COLOR, &xc) || !XAllocColor(dpy, cmap, &xc)) {
- fprintf(stderr, "bxbar: cannot allocate bg color '%s'\n", BG_COLOR);
- cleanup(1);
+ die("bxbar: cannot allocate bg color '%s'", BG_COLOR);
}
bg_pixel = xc.pixel;
/* Allocate border color */
if (!XParseColor(dpy, cmap, BORDER_COLOR, &xc) || !XAllocColor(dpy, cmap, &xc)) {
- fprintf(stderr, "bxbar: cannot allocate border color '%s'\n", BORDER_COLOR);
- cleanup(1);
+ die("bxbar: cannot allocate border color '%s'", BORDER_COLOR);
}
border_pixel = xc.pixel;
PropModeReplace, (unsigned char *)strut, 12);
}
-static void
-logmsg(const char *fmt, ...)
-{
- FILE *f = fopen("/home/brett/.local/tmp/bxbar.log", "a");
- if (!f) return;
- va_list ap;
- va_start(ap, fmt);
- vfprintf(f, fmt, ap);
- fprintf(f, "\n");
- va_end(ap);
- fclose(f);
-}
-
void
run(void)
{
if (fds[0].revents & (POLLIN | POLLHUP)) {
if (fds[0].revents & POLLIN) {
int rc = readstdin();
- logmsg("readstdin returned %d, slen=%d, stext='%s'", rc, slen, stext);
if (rc == 1) {
fds[0].fd = -1;
logmsg("stdin EOF, fd set to -1");
void
draw(void)
{
- logmsg("draw() called, stext='%s'", stext);
-
/* Paint background */
XftDrawRect(xft_draw, &color[1], 0, 0, screen_w, BAR_HEIGHT);
while (*right == ' ')
right++;
- logmsg("DEBUG: Left string is '%s', Right string is '%s'", left, right);
/* Left section — left-aligned */
int left_len = text_fit(left, strlen(left), half_w, &ext);
XftDrawStringUtf8(xft_draw, &color[0], font, PADDING, y,
XftDrawStringUtf8(xft_draw, &color[0], font, right_x, y,
(FcChar8 *)right, right_len);
- logmsg("drawing left: '%.*s' len=%d at x=%d", left_len, left, left_len, PADDING);
- logmsg("drawing right: '%.*s' len=%d at x=%d", right_len, right, right_len, right_x);
-
-
/* Restore delimiter */
*delim = DELIMITER;
} else {
blob - 4cbd713c3d6f0b24c25efc9122f76dcad8f751d8
blob + 7d3a78ec662265c9b3363c03bbc80f79e8b96c43
--- config.def.h
+++ config.def.h
#define BG_COLOR "#000000"
#define FONT "monospace:size=14"
#define DELIMITER '\x01'
+#define DEBUG_LOGGING 0