vcstime: Use either /dev/vcs[a] or /dev/vcs[a]0
authorMichael Schutte <michi@uiae.at>
Sat, 2 Jan 2010 16:34:41 +0000 (17:34 +0100)
committerAlexey Gladkov <gladkov.alexey@gmail.com>
Sun, 3 Jan 2010 00:10:34 +0000 (03:10 +0300)
Make vcstime work on all systems by considering both /dev/vcs and
/dev/vcs0 to hold the console memory for the current VT.

Signed-off-by: Michael Schutte <michi@uiae.at>
Signed-off-by: Alexey Gladkov <gladkov.alexey@gmail.com>
contrib/vcstime.c

index 0e657c0..1ee8edd 100644 (file)
@@ -20,10 +20,11 @@ number_of_columns() {
     int fda;
     unsigned char rc[2];       /* unsigned: Ranty@soon.com */
 
-    if((fda = open("/dev/vcsa0", O_RDONLY)) < 0)
-       fatal("/dev/vcsa0");
+    if((fda = open("/dev/vcsa", O_RDONLY)) < 0
+           && (fda = open("/dev/vcsa0", O_RDONLY)) < 0)
+       fatal("/dev/vcsa");
     if(read(fda, rc, 2) != 2)
-       fatal("/dev/vcsa0");
+       fatal("/dev/vcsa");
     close(fda);
     return rc[1];
 }
@@ -36,8 +37,9 @@ main(){
     struct tm *t;
     char tijd[10];
 
-    if((fd = open("/dev/vcs0", O_WRONLY)) < 0)
-       fatal("/dev/vcs0");
+    if((fd = open("/dev/vcs", O_WRONLY)) < 0
+           && (fd = open("/dev/vcs0", O_WRONLY)) < 0)
+       fatal("/dev/vcs");
 
     while(1) {
        lseek(fd, cols-10, 0);