From 474ac61f6e19175cd3c0309718f0b8e257174230 Mon Sep 17 00:00:00 2001 From: randomuser Date: Tue, 20 Sep 2022 16:40:18 -0500 Subject: [PATCH] when a desktop is focused but not occupied, include it in the display --- bspc.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/bspc.c b/bspc.c index 72b6281..c7826cb 100644 --- a/bspc.c +++ b/bspc.c @@ -309,14 +309,20 @@ int bspwm_update(struct module *module) { current[1] = '\0'; for(int i = 0; i < MODULE_BUFFER_LEN; i++) { - if(module->buffer[i] == '\0') { - /* XXX: susceptible to buffer underflow */ - if(i) module->buffer[i - 1] = '\0'; + if(module->buffer[i] == '\0' && i) { + if(*current != '\0' && i <= MODULE_BUFFER_LEN - 2) { + module->buffer[i - 1] = ' '; + module->buffer[i] = *current; + module->buffer[i + 1] = '<'; + module->buffer[i + 2] = '\0'; + } else module->buffer[i - 1] = '\0'; break; } - if(isdigit(module->buffer[i]) && *current == module->buffer[i]) + if(isdigit(module->buffer[i]) && *current == module->buffer[i]) { /* XXX: susceptible to buffer overflow */ if(i == MODULE_BUFFER_LEN) module->buffer[i + 1] = '<'; + *current = '\0'; + } if(module->buffer[i] == '\n') module->buffer[i] = ' '; }