[PATCH 2/2] [main] Handle plymouth:splash or plymouth:debug as last argument

Colin Watson cjwatson at ubuntu.com
Wed Apr 28 05:28:34 PDT 2010


If plymouth:splash or plymouth:debug is the last argument in
/proc/cmdline, then it will be terminated with '\n' rather than ' '.
Handle this.
---
 src/main.c |   14 ++++----------
 1 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/main.c b/src/main.c
index 9bd66a0..13fed2b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -221,10 +221,8 @@ find_override_splash (state_t *state)
       char *end;
       splash_string = strdup (splash_string + strlen ("plymouth:splash="));
 
-      end = strstr (splash_string, " ");
-
-      if (end != NULL)
-        *end = '\0';
+      end = splash_string + strcspn (splash_string, " \n");
+      *end = '\0';
 
       ply_trace ("Splash is configured to be '%s'", splash_string);
 
@@ -1558,12 +1556,8 @@ check_verbosity (state_t *state)
 
           path += strlen (" plymouth:debug=file:");
           debug_buffer_path = strdup (path);
-          end = strstr (debug_buffer_path, " ");
-
-          if (end != NULL)
-            *end = '\0';
-
-          debug_buffer_path = path;
+          end = debug_buffer_path + strcspn (debug_buffer_path, " \n");
+          *end = '\0';
         }
 
         if (debug_buffer == NULL)
-- 
1.7.0.4


More information about the plymouth mailing list