]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Merge pull request #1744 from evverx/fix-debug-generator
authorLennart Poettering <lennart@poettering.net>
Tue, 3 Nov 2015 12:04:06 +0000 (13:04 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 3 Nov 2015 12:04:06 +0000 (13:04 +0100)
debug-generator: respect kernel parameters for default unit setting

1  2 
src/basic/proc-cmdline.c
src/core/main.c

index 778c9945018c63b265179ab708227702a9005dd1,f9f98af473a1ed1addd9fb39020518defcbac58b..4464573c5b6f55fdb29e94a89f14f07d42855a85
@@@ -141,5 -142,33 +142,33 @@@ int shall_restore_state(void) 
          if (r == 0)
                  return true;
  
 -        return parse_boolean(value) != 0;
 +        return parse_boolean(value);
  }
+ static const char * const rlmap[] = {
+         "emergency", SPECIAL_EMERGENCY_TARGET,
+         "-b",        SPECIAL_EMERGENCY_TARGET,
+         "rescue",    SPECIAL_RESCUE_TARGET,
+         "single",    SPECIAL_RESCUE_TARGET,
+         "-s",        SPECIAL_RESCUE_TARGET,
+         "s",         SPECIAL_RESCUE_TARGET,
+         "S",         SPECIAL_RESCUE_TARGET,
+         "1",         SPECIAL_RESCUE_TARGET,
+         "2",         SPECIAL_MULTI_USER_TARGET,
+         "3",         SPECIAL_MULTI_USER_TARGET,
+         "4",         SPECIAL_MULTI_USER_TARGET,
+         "5",         SPECIAL_GRAPHICAL_TARGET,
+ };
+ const char* runlevel_to_target(const char *word) {
+         size_t i;
+         if (!word)
+                 return NULL;
+         for (i = 0; i < ELEMENTSOF(rlmap); i += 2)
+                 if (streq(word, rlmap[i]))
+                         return rlmap[i+1];
+         return NULL;
+ }
diff --cc src/core/main.c
Simple merge