chiark / gitweb /
vconsole: use /dev/vcsa1-15 to check for allocated VTs
authorKay Sievers <kay@vrfy.org>
Tue, 15 Jan 2013 19:32:57 +0000 (20:32 +0100)
committerKay Sievers <kay@vrfy.org>
Tue, 15 Jan 2013 19:40:53 +0000 (20:40 +0100)
src/vconsole/vconsole-setup.c

index 679dc1a..6501705 100644 (file)
@@ -183,11 +183,12 @@ static void font_copy_to_all_vcs(int fd) {
                 if (i == vcs.v_active)
                         continue;
 
-                /* skip unused VTs above tty6 to avoid allocating them */
-                if (i > 6 && ((vcs.v_state >> i) & 1) == 0)
+                /* skip non-allocated ttys */
+                snprintf(vcname, sizeof(vcname), "/dev/vcs%i", i);
+                if (access(vcname, F_OK) < 0)
                         continue;
 
-                snprintf(vcname , sizeof(vcname), "/dev/tty%i", i);
+                snprintf(vcname, sizeof(vcname), "/dev/tty%i", i);
                 vcfd = open_terminal(vcname, O_RDWR|O_CLOEXEC);
                 if (vcfd < 0)
                         continue;