Xinqi Bao's Git
projects
/
slstatus.git
/ commitdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
patch
|
inline
| side by side (parent:
4d6761e
)
swap: Print UNKNOWN_STR if no swap is allocated
author
Jody Leonard <
[email protected]
>
Sat, 15 Oct 2016 23:50:02 +0000
(19:50 -0400)
committer
Jody Leonard <
[email protected]
>
Sat, 15 Oct 2016 23:51:19 +0000
(19:51 -0400)
slstatus.c
patch
|
blob
|
history
diff --git
a/slstatus.c
b/slstatus.c
index
f39a2dc
..
9559226
100644
(file)
--- a/
slstatus.c
+++ b/
slstatus.c
@@
-424,7
+424,7
@@
run_command(const char *cmd)
static char *
swap_free(void)
{
static char *
swap_free(void)
{
- long free;
+ long
total,
free;
FILE *fp;
char buf[2048];
size_t bytes_read;
FILE *fp;
char buf[2048];
size_t bytes_read;
@@
-443,6
+443,12
@@
swap_free(void)
return smprintf(UNKNOWN_STR);
}
return smprintf(UNKNOWN_STR);
}
+ match = strstr(buf, "SwapTotal");
+ sscanf(match, "SwapTotal: %ld kB\n", &total);
+ if (total == 0) {
+ return smprintf(UNKNOWN_STR);
+ }
+
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);
@@
-471,11
+477,14
@@
swap_perc(void)
return smprintf(UNKNOWN_STR);
}
return smprintf(UNKNOWN_STR);
}
- match = strstr(buf, "SwapCached");
- sscanf(match, "SwapCached: %ld kB\n", &cached);
-
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
+ if (total == 0) {
+ return smprintf(UNKNOWN_STR);
+ }
+
+ match = strstr(buf, "SwapCached");
+ sscanf(match, "SwapCached: %ld kB\n", &cached);
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);
@@
-507,6
+516,9
@@
swap_total(void)
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
+ if (total == 0) {
+ return smprintf(UNKNOWN_STR);
+ }
return smprintf("%f", (float)total / 1024 / 1024);
}
return smprintf("%f", (float)total / 1024 / 1024);
}
@@
-533,11
+545,14
@@
swap_used(void)
return smprintf(UNKNOWN_STR);
}
return smprintf(UNKNOWN_STR);
}
- match = strstr(buf, "SwapCached");
- sscanf(match, "SwapCached: %ld kB\n", &cached);
-
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
match = strstr(buf, "SwapTotal");
sscanf(match, "SwapTotal: %ld kB\n", &total);
+ if (total == 0) {
+ return smprintf(UNKNOWN_STR);
+ }
+
+ match = strstr(buf, "SwapCached");
+ sscanf(match, "SwapCached: %ld kB\n", &cached);
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);
match = strstr(buf, "SwapFree");
sscanf(match, "SwapFree: %ld kB\n", &free);