chiark / gitweb /
main: Fix a typo emergency shall->emergency shell
[elogind.git] / src / systemctl.c
index 889e3ee0641fb47e058d500612897974b6286ace..08c7fabb7aca8a6a56d89248624d976b9da62415 100644 (file)
@@ -3963,6 +3963,7 @@ static int create_symlink(const char *verb, const char *old_path, const char *ne
                         return 1;
                 }
 
+                free(dest);
                 return 0;
         }
 
@@ -4089,7 +4090,7 @@ static int install_info_apply(const char *verb, LookupPaths *paths, InstallInfo
         }
 
         if (!f) {
-#if (defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE)) || defined(TARGET_MEEGO) && defined (HAVE_SYSV_COMPAT)
+#if (defined(TARGET_FEDORA) || defined(TARGET_MANDRIVA) || defined(TARGET_SUSE) || defined(TARGET_MEEGO) || defined(TARGET_ALTLINUX)) && defined (HAVE_SYSV_COMPAT)
 
                 if (endswith(i->name, ".service")) {
                         char *sysv;
@@ -4172,8 +4173,10 @@ static int install_info_apply(const char *verb, LookupPaths *paths, InstallInfo
         if (streq(verb, "is-enabled") &&
             strv_isempty(i->aliases) &&
             strv_isempty(i->wanted_by) &&
-            !path_startswith(filename, "/etc"))
+            !path_startswith(filename, "/etc")) {
+                fclose(f);
                 return 1;
+        }
 
         n_symlinks += strv_length(i->aliases);
         n_symlinks += strv_length(i->wanted_by);