
#
# Patch managed by http://www.holgerschurig.de/patcher.html
#

--- xserver/hw/kdrive/linux/linux.c~devfs
+++ xserver/hw/kdrive/linux/linux.c
@@ -82,10 +82,10 @@
 	vtno = kdVirtualTerminal;
     else
     {
-	if ((fd = open("/dev/tty0",O_WRONLY,0)) < 0) 
+	if ((fd = open("/dev/vc/0",O_WRONLY,0)) < 0) 
 	{
 	    FatalError(
-		       "LinuxInit: Cannot open /dev/tty0 (%s)\n",
+		       "LinuxInit: Cannot open /dev/tty/0 (%s)\n",
 		       strerror(errno));
 	}
 	if ((ioctl(fd, VT_OPENQRY, &vtno) < 0) ||
@@ -96,7 +96,7 @@
     }
     close(fd);
 
-    sprintf(vtname,"/dev/tty%d",vtno); /* /dev/tty1-64 */
+    sprintf(vtname,"/dev/vc/%d",vtno); /* /dev/tty1-64 */
 
     if ((LinuxConsoleFd = open(vtname, O_RDWR|O_NDELAY, 0)) < 0)
     {
@@ -113,7 +113,7 @@
      *
      * Why is this needed?
      */
-    LinuxCheckChown ("/dev/tty0");
+    LinuxCheckChown ("/dev/vc/0");
     /*
      * Linux doesn't switch to an active vt after the last close of a vt,
      * so we do this ourselves by remembering which is active now.
@@ -453,7 +453,7 @@
 	activeVT = -1;
     }
     close(LinuxConsoleFd);                /* make the vt-manager happy */
-    fd = open ("/dev/tty0", O_RDWR|O_NDELAY, 0);
+    fd = open ("/dev/vc/0", O_RDWR|O_NDELAY, 0);
     if (fd >= 0)
     {
 	memset (&vts, '\0', sizeof (vts));	/* valgrind */
