diff options
author | marha <marha@users.sourceforge.net> | 2009-12-14 10:22:19 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-12-14 10:22:19 +0000 |
commit | 9b17452909d3140fa33a753cadfaa6e9006b9685 (patch) | |
tree | 4abbb4b660ee9125cb0c20dab5a1c8de9f5a4a2d /xorg-server/xkb/xkb.c | |
parent | 75d2bbcf0f39b9c85bc270728343f61dabebce2d (diff) | |
download | vcxsrv-9b17452909d3140fa33a753cadfaa6e9006b9685.tar.gz vcxsrv-9b17452909d3140fa33a753cadfaa6e9006b9685.tar.bz2 vcxsrv-9b17452909d3140fa33a753cadfaa6e9006b9685.zip |
Git update 14/12/2009
Diffstat (limited to 'xorg-server/xkb/xkb.c')
-rw-r--r-- | xorg-server/xkb/xkb.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/xorg-server/xkb/xkb.c b/xorg-server/xkb/xkb.c index 98e879ddb..35f8d1cbd 100644 --- a/xorg-server/xkb/xkb.c +++ b/xorg-server/xkb/xkb.c @@ -3273,20 +3273,21 @@ _XkbFindNamedIndicatorMap(XkbSrvLedInfoPtr sli, Atom indicator, int *led_return) { XkbIndicatorMapPtr map; - int led; /* search for the right indicator */ map = NULL; if (sli->names && sli->maps) { + int led; + for (led = 0; (led < XkbNumIndicators) && (map == NULL); led++) { if (sli->names[led] == indicator) { map= &sli->maps[led]; + *led_return = led; break; } } } - *led_return = led; return map; } @@ -4298,9 +4299,12 @@ ProcXkbSetNames(ClientPtr client) static char * XkbWriteCountedString(char *wire,char *str,Bool swap) { -CARD16 len,*pLen; + CARD16 len,*pLen; + + if (!str) + return wire; - len= (str?strlen(str):0); + len= strlen(str); pLen= (CARD16 *)wire; *pLen= len; if (swap) { |