From 986a50e4a1c017cc655bbcce45ffa4444386678b Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac Date: Mon, 29 Apr 2013 13:50:26 +0200 Subject: [PATCH] cleanup: improve previous patch Make the test earlier, before any dereference of 'argv' pointer. --- tools/lvmcmdline.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/lvmcmdline.c b/tools/lvmcmdline.c index 60aa4d9ed..c03e9ef3b 100644 --- a/tools/lvmcmdline.c +++ b/tools/lvmcmdline.c @@ -1487,6 +1487,9 @@ int lvm2_main(int argc, char **argv) int ret, alias = 0; struct cmd_context *cmd; + if (!argv) + return -1; + base = last_path_component(argv[0]); if (strcmp(base, "lvm") && strcmp(base, "lvm.static") && strcmp(base, "initrd-lvm")) @@ -1499,7 +1502,7 @@ int lvm2_main(int argc, char **argv) return -1; if (is_static() && strcmp(base, "lvm.static") && - path_exists(LVM_SHARED_PATH) && argv && + path_exists(LVM_SHARED_PATH) && !getenv("LVM_DID_EXEC")) { if (setenv("LVM_DID_EXEC", base, 1)) log_sys_error("setenv", "LVM_DID_EXEC");