Subject: xsrc/20764: xkbInit.c: wrong variable initialized
To: None <>
From: john heasley <>
List: netbsd-bugs
Date: 03/17/2003 05:44:37
>Number:         20764
>Category:       xsrc
>Synopsis:       xkbInit.c: wrong variable initialized
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    xsrc-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Mar 16 21:45:00 PST 2003
>Originator:     john heasley
>Release:        NetBSD 1.6L
System: NetBSD guelah 1.6L NetBSD 1.6L (guelah) #3: Thu Jan 23 06:35:30 UTC 2003 root@guelah:/sys/arch/sparc64/compile/guelah sparc64
Architecture: sparc64
Machine: sparc64
the wrong variable is "initialized" in xkbInit.c:XkbInitKeyboardDeviceStruct()
and leads to core (MALLOC_OPTIONS X) when/if it's free'd at the end of the
function (it starts off on the stack).

xkbd initializtion on sparc64 w/ type 5 kbd triggers (for me).


Index: xkbInit.c
RCS file: /cvsroot/xsrc/xfree/xc/programs/Xserver/xkb/xkbInit.c,v
retrieving revision
diff -u -r1.1.1.5 xkbInit.c
--- xkbInit.c	2003/02/28 13:20:28
+++ xkbInit.c	2003/03/17 05:28:48
@@ -713,7 +713,7 @@
     if (names->types) names->types = _XkbDupString(names->types);
     if (names->compat) names->compat = _XkbDupString(names->compat);
     if (names->geometry) names->geometry = _XkbDupString(names->geometry);
-    if (names->symbols) names->geometry = _XkbDupString(names->symbols);
+    if (names->symbols) names->symbols = _XkbDupString(names->symbols);
     if (defs.model && defs.layout && rules) {
 	XkbComponentNamesRec	rNames;