/* statusbar */
#define FORMATSTRING "wifi %4s | bat %4s | cpu %4s %3s | ram %3s | vol %4s | %3s"
-#define ARGUMENTS wifi_signal(), battery(), cpu_usage(), cpu_temperature(), ram_usage(), volume(), datetime()
+#define ARGUMENTS pWifi_signal, pBattery, pCpu_usage, pCpu_temperature, pRam_usage, pVolume, pDatetime
/* return the string (mute) */
if (!mute)
- return "mute";
+ return smprintf("mute");
else
return smprintf("%d%%", (vol * 100) / max);
}
exit(1);
}
+ char *pWifi_signal = NULL;
+ char *pBattery = NULL;
+ char *pCpu_usage = NULL;
+ char *pCpu_temperature = NULL;
+ char *pRam_usage = NULL;
+ char *pVolume = NULL;
+ char *pDatetime = NULL;
+
/* return status every second */
for (;;) {
+ pWifi_signal = wifi_signal();
+ pBattery = battery();
+ pCpu_usage = cpu_usage();
+ pCpu_temperature = cpu_temperature();
+ pRam_usage = ram_usage();
+ pVolume = volume();
+ pDatetime = datetime();
sprintf(status, FORMATSTRING, ARGUMENTS);
setstatus(status);
+ free(pWifi_signal);
+ free(pBattery);
+ free(pCpu_usage);
+ free(pCpu_temperature);
+ free(pRam_usage);
+ free(pVolume);
+ free(pDatetime);
}
/* close display */