status

statusbar program for dwm
git clone anongit@rnpnr.xyz:status.git
Log | Files | Refs | Feed | README | LICENSE

script.c (426B)


      1 /* See LICENSE for license details. */
      2 static BLOCK_UPDATE_FN(script_update)
      3 {
      4 	char *out = "";
      5 
      6 	/* TODO(rnp): don't use c-runtime for this */
      7 	FILE *fp  = popen(b->arg, "r");
      8 	if (fp) {
      9 		if (fgets(buffer, sizeof(buffer), fp)) {
     10 			buffer[strcspn(buffer, "\n")] = 0;
     11 			out = buffer;
     12 		}
     13 		pclose(fp);
     14 	}
     15 	b->len = snprintf(b->data, sizeof(b->data), b->fmt, out);
     16 }
     17 
     18 static BLOCK_INIT_FN(script_init)
     19 {
     20 	script_update(b);
     21 }