6560332 Xorg will not start if xorg.conf lists "Keyboard" driver
authorAlan Coopersmith <Alan.Coopersmith@Sun.COM>
Wed, 23 May 2007 14:08:32 -0700
changeset 161 28a8f7830069
parent 160 bd08666e7b90
child 162 073d0aeee13d
6560332 Xorg will not start if xorg.conf lists "Keyboard" driver
open-src/xserver/xorg/Makefile
open-src/xserver/xorg/kbd-driver.patch
--- a/open-src/xserver/xorg/Makefile	Tue May 22 17:26:17 2007 -0700
+++ b/open-src/xserver/xorg/Makefile	Wed May 23 14:08:32 2007 -0700
@@ -30,7 +30,7 @@
 # or other dealings in this Software without prior written authorization
 # of the copyright holder.
 #
-# @(#)Makefile	1.42	07/05/16
+# @(#)Makefile	1.43	07/05/23
 #
 
 PWD:sh=pwd
@@ -98,7 +98,8 @@
 	lg3d.patch \
 	6535006.patch \
 	6540484.patch \
-	signal-handler.patch
+	signal-handler.patch \
+	kbd-driver.patch
 
 # Directory created by unpacking source
 SOURCE_DIR=$(BUILD_DIR)/$(MODULE_NAME)-$(XORGSERVER_VERS)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/xserver/xorg/kbd-driver.patch	Wed May 23 14:08:32 2007 -0700
@@ -0,0 +1,60 @@
+# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the
+# "Software"), to deal in the Software without restriction, including
+# without limitation the rights to use, copy, modify, merge, publish,
+# distribute, and/or sell copies of the Software, and to permit persons
+# to whom the Software is furnished to do so, provided that the above
+# copyright notice(s) and this permission notice appear in all copies of
+# the Software and that both the above copyright notice(s) and this
+# permission notice appear in supporting documentation.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+# OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+# HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+# INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+#
+# Except as contained in this notice, the name of a copyright holder
+# shall not be used in advertising or otherwise to promote the sale, use
+# or other dealings in this Software without prior written authorization
+# of the copyright holder.
+# 
+
+Preserve compatibility with old xorg.conf files that have "keyboard" or
+"Keyboard" drivers listed.   (Sun bug 6560332)
+
+--- hw/xfree86/common/xf86Init.c	2007-05-18 18:26:06.499884000 -0700
++++ hw/xfree86/common/xf86Init.c	2007-05-22 16:13:04.691806000 -0700
+@@ -1033,6 +1033,14 @@
+ 
+ 		continue;
+ 	    }
++#else
++	    /* Replace obsolete keyboard driver with kbd */
++    	    if (!xf86NameCmp(pDev->driver, "keyboard")) {
++		xf86MsgVerb(X_WARNING, 0, "*** WARNING the legacy keyboard driver \"%s\" is deprecated\n", pDev->driver);
++		xf86MsgVerb(X_WARNING, 0, "*** Using the new \"kbd\" driver for \"%s\".\n",
++			pDev->identifier);
++		strcpy(pDev->driver, "kbd");
++	    }
+ #endif
+ 
+ 	    if ((pDrv = MatchInput(pDev)) == NULL) {
+@@ -1953,6 +1961,11 @@
+ 	if (name == NULL || *name == '\0')
+ 	    continue;
+ 
++	/* Replace obsolete keyboard driver with kbd */
++	if (!xf86NameCmp(name, "keyboard")) {
++	    strcpy(name, "kbd");
++	}
++	
+ 	if (optlist)
+ 	    opt = optlist[i];
+ 	else