From 11f80fbdbf633b1f396e87d87c08de757fdb1bd4 Mon Sep 17 00:00:00 2001 From: Karol Lewandowski Date: Thu, 17 Jan 2019 12:38:48 +0100 Subject: [PATCH] svace: fix closing potentially negative fd This commit fixes following issue reported by svace: "Variable 'cinfo.prstatus_fd', which may receive negative value at crash-manager.c:588 by calling function 'set_crash_info' at crash-manager.c:1267, is used at crash-manager.c:1332 by calling function 'close'." Change-Id: Ie625bc8ac5eb16a84bb7b139b569c6189e1a5e25 --- src/crash-manager/crash-manager.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/crash-manager/crash-manager.c b/src/crash-manager/crash-manager.c index 1cba5ee..e2c6a0f 100644 --- a/src/crash-manager/crash-manager.c +++ b/src/crash-manager/crash-manager.c @@ -1202,7 +1202,7 @@ static void free_crash_info(struct crash_info *cinfo) int main(int argc, char *argv[]) { - struct crash_info cinfo = {0}; + struct crash_info cinfo = {.prstatus_fd = -1}; /* Execute dump_systemstate in parallel */ static int dump_state_pid; @@ -1319,7 +1319,8 @@ int main(int argc, char *argv[]) launch_crash_popup(&cinfo); exit: - close(cinfo.prstatus_fd); + if (cinfo.prstatus_fd >= 0) + close(cinfo.prstatus_fd); free(crash_temp_path); free(crash_root_path); free(crash_crash_path); -- 2.7.4