summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ply-window.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ply-window.c b/src/ply-window.c
index 830039d..9957517 100644
--- a/src/ply-window.c
+++ b/src/ply-window.c
@@ -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)