char state[12];
FILE *fp;
- if (!state) {
- warn("Failed to get battery state.");
- return smprintf(UNKNOWN_STR);
- }
-
-
ccat(3, "/sys/class/power_supply/", battery, "/status");
fp = fopen(concat, "r");
if (fp == NULL) {
}
fgets(hostname, sizeof(hostname), fp);
- /* FIXME: needs improvement */
- memset(&hostname[strlen(hostname)], '\0',
- sizeof(hostname) - strlen(hostname));
+ hostname[strlen(hostname)-1] = '\0';
fclose(fp);
return smprintf("%s", hostname);
static char *
run_command(const char* command)
{
- int good;
FILE *fp = popen(command, "r");
- char buffer[64] = "";
+ char buffer[64] = '\0';
if (fp == NULL) {
warn("Could not get command output for: %s", command);
return smprintf(UNKNOWN_STR);
}
- fgets(buffer, sizeof(buffer)-1, fp);
- pclose(fp);
- for (int i = 0 ; i != sizeof(buffer); i++) {
- if (buffer[i] == '\0') {
- good = 1;
- break;
- }
- }
- if (good)
- buffer[strlen(buffer)-1] = '\0';
+ fgets(buffer, sizeof(buffer), fp);
+ buffer[sizeof(buffer)-1] = '\0';
+ pclose(fp);
return smprintf("%s", buffer);
}