summaryrefslogtreecommitdiff
path: root/src/print_battery_info.c
diff options
context:
space:
mode:
authorOlivier Gayot <olivier.gayot@sigexec.com>2018-06-20 13:41:59 +0200
committerOlivier Gayot <olivier.gayot@sigexec.com>2018-06-20 14:20:17 +0200
commitc221b4d331d46d07fe24afc78e4eeb021556d013 (patch)
tree66846b5f6023291fda2d72fe523d4ee0614d2a1f /src/print_battery_info.c
parent445b1925e3d2e239740d7765e5892d0671174e8e (diff)
Prevent potential crash if glob() fails
Calling globfree(NULL) is undefined behaviour. In Linux (glibc), it results in a segmentation fault. It is also undefined behaviour to call globfree(&pglob) if a previous call to glob(&pglob) returned an error. Signed-off-by: Olivier Gayot <olivier.gayot@sigexec.com>
Diffstat (limited to 'src/print_battery_info.c')
-rw-r--r--src/print_battery_info.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/print_battery_info.c b/src/print_battery_info.c
index 72c2d6f..04b5a25 100644
--- a/src/print_battery_info.c
+++ b/src/print_battery_info.c
@@ -459,8 +459,8 @@ static bool slurp_all_batteries(struct battery_info *batt_info, yajl_gen json_ge
is_found = true;
add_battery_info(batt_info, &batt_buf);
}
+ globfree(&globbuf);
}
- globfree(&globbuf);
free(globpath);
if (!is_found) {