aboutsummaryrefslogtreecommitdiff
path: root/sway/main.c
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2016-12-15 17:08:56 -0500
committerDrew DeVault <sir@cmpwn.com>2016-12-15 19:01:40 -0500
commit4c6c65e70cbe1e6b4b409ba18b71b2a8fb251d83 (patch)
treea1c7455f1a81bea1d40427440c32461008b7a524 /sway/main.c
parent9ad1e6b40f9589a5ab8242dd3b2e514b70d97799 (diff)
Handle malloc failures from read_line
Diffstat (limited to 'sway/main.c')
-rw-r--r--sway/main.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/sway/main.c b/sway/main.c
index 157c61b3..d41eb292 100644
--- a/sway/main.c
+++ b/sway/main.c
@@ -53,7 +53,10 @@ void detect_proprietary() {
return;
}
while (!feof(f)) {
- char *line = read_line(f);
+ char *line;
+ if (!(line = read_line(f))) {
+ break;
+ }
if (strstr(line, "nvidia")) {
fprintf(stderr, "\x1B[1;31mWarning: Proprietary nvidia drivers do NOT support Wayland. Use nouveau.\x1B[0m\n");
fprintf(stderr, "\x1B[1;31mYes, they STILL don't work with the newly announced wayland \"support\".\x1B[0m\n");
@@ -118,7 +121,10 @@ static void log_distro() {
if (f) {
sway_log(L_INFO, "Contents of %s:", paths[i]);
while (!feof(f)) {
- char *line = read_line(f);
+ char *line;
+ if (!(line = read_line(f))) {
+ break;
+ }
if (*line) {
sway_log(L_INFO, "%s", line);
}
@@ -136,7 +142,10 @@ static void log_kernel() {
return;
}
while (!feof(f)) {
- char *line = read_line(f);
+ char *line;
+ if (!(line = read_line(f))) {
+ break;
+ }
if (*line) {
sway_log(L_INFO, "%s", line);
}