diff options
author | tsi <tsi> | 2008-03-18 20:24:04 +0000 |
---|---|---|
committer | tsi <tsi> | 2008-03-18 20:24:04 +0000 |
commit | 8a5894482531f897efdeba649190016671a49698 (patch) | |
tree | 91f294317eb5ae956e91a1a5a8e664dffdb7a869 | |
parent | 9cdde6f42a86a917c650affe6b4b2d7f4e2d2326 (diff) |
22. Fix null pointer defereference in XKB when LEDs don't exist
(Peter Hutterer, via X.Org bug #13961).
-rw-r--r-- | programs/Xserver/hw/xfree86/CHANGELOG | 4 | ||||
-rw-r--r-- | programs/Xserver/xkb/xkbLEDs.c | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/programs/Xserver/hw/xfree86/CHANGELOG b/programs/Xserver/hw/xfree86/CHANGELOG index bb0d92acc..f209ef810 100644 --- a/programs/Xserver/hw/xfree86/CHANGELOG +++ b/programs/Xserver/hw/xfree86/CHANGELOG @@ -1,4 +1,6 @@ XFree86 4.7.99.14 (xx March 2008) + 22. Fix null pointer defereference in XKB when LEDs don't exist + (Peter Hutterer, via X.Org bug #13961). 21. Adapt from X.Org fixes for the CVE-2007-5760, CVE-2007-5958, CVE-2007-6427, CVE-2007-6428, CVE-2007-6429 and CVE-2008-0006 security advisories. @@ -20663,4 +20665,4 @@ XFree86 3.0a (28 April 1994) XFree86 3.0 (26 April 1994) -$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3933 2008/03/18 19:41:54 tsi Exp $ +$XFree86: xc/programs/Xserver/hw/xfree86/CHANGELOG,v 3.3934 2008/03/18 19:50:46 tsi Exp $ diff --git a/programs/Xserver/xkb/xkbLEDs.c b/programs/Xserver/xkb/xkbLEDs.c index eb7fa012c..ca272c41b 100644 --- a/programs/Xserver/xkb/xkbLEDs.c +++ b/programs/Xserver/xkb/xkbLEDs.c @@ -1,3 +1,4 @@ +/* $XFree86: xc/programs/Xserver/xkb/xkbLEDs.c,v 3.10tsi Exp $ */ /************************************************************ Copyright (c) 1995 by Silicon Graphics Computer Systems, Inc. @@ -23,7 +24,6 @@ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ********************************************************/ -/* $XFree86: xc/programs/Xserver/xkb/xkbLEDs.c,v 3.9tsi Exp $ */ #include <stdio.h> #include <ctype.h> @@ -60,6 +60,9 @@ XkbSrvLedInfoPtr sli; sli= XkbFindSrvLedInfo(dev,XkbDfltXIClass,XkbDfltXIId,0); + if (!sli) + return update; + if (state_changes&(XkbModifierStateMask|XkbGroupStateMask)) update|= sli->usesEffective; if (state_changes&(XkbModifierBaseMask|XkbGroupBaseMask)) |