]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
cryptsetup: small if check improvement (#7747)
authorLennart Poettering <lennart@poettering.net>
Wed, 27 Dec 2017 11:43:31 +0000 (12:43 +0100)
committerGitHub <noreply@github.com>
Wed, 27 Dec 2017 11:43:31 +0000 (12:43 +0100)
It's a bit weird to test these strings after the fact instead of before.
Let's make sure that we don't even attempt the string escaping if the
strings are NULL.

Follow-up for #7688

src/cryptsetup/cryptsetup-generator.c

index b41faed6ad4023b0318cba90f6e3d29c2b8f03fc..0b46e2db2a3a964e57289dded4a7acec9bc58e67 100644 (file)
@@ -106,9 +106,11 @@ static int create_disk(
         if (r < 0)
                 return log_error_errno(r, "Failed to generate unit name: %m");
 
-        password_escaped = specifier_escape(password);
-        if (password && !password_escaped)
-                return log_oom();
+        if (password) {
+                password_escaped = specifier_escape(password);
+                if (!password_escaped)
+                        return log_oom();
+        }
 
         r = generator_open_unit_file(arg_dest, NULL, n, &f);
         if (r < 0)
@@ -176,9 +178,11 @@ static int create_disk(
         if (r < 0)
                 return r;
 
-        filtered_escaped = specifier_escape(filtered);
-        if (filtered && !filtered_escaped)
-                return log_oom();
+        if (filtered) {
+                filtered_escaped = specifier_escape(filtered);
+                if (!filtered_escaped)
+                        return log_oom();
+        }
 
         fprintf(f,
                 "\n[Service]\n"