]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
Support passing in a 0 to ply_window_new to mean "current vt"
authorRay Strode <rstrode@redhat.com>
Wed, 4 Jun 2008 20:29:38 +0000 (16:29 -0400)
committerRay Strode <rstrode@redhat.com>
Wed, 4 Jun 2008 20:29:38 +0000 (16:29 -0400)
src/ply-window.c

index 830039d7b67a2f92bd5612424524a4b2a2b170f9..99575173721dfa5f0cdd4b0fbf885f66b02c6047 100644 (file)
@@ -91,8 +91,6 @@ ply_window_new (int vt_number)
 {
   ply_window_t *window;
 
-  assert (vt_number > 0);
-
   window = calloc (1, sizeof (ply_window_t));
   window->keyboard_input_buffer = ply_buffer_new ();
   window->line_buffer = ply_buffer_new ();
@@ -305,6 +303,13 @@ ply_window_open (ply_window_t *window)
   assert (window->tty_name != NULL);
   assert (window->tty_fd < 0);
 
+  if (window->vt_number == 0)
+    {
+      window->vt_number = get_active_vt ();
+      free (window->tty_name);
+      asprintf (&window->tty_name, "/dev/tty%d", window->vt_number);
+    }
+
   window->tty_fd = open (window->tty_name, O_RDWR | O_NOCTTY);
 
   if (window->tty_fd < 0)