From: Dan Nicholson Date: Thu, 19 Mar 2009 18:34:54 +0000 (-0700) Subject: keysym: Coding style cleanup X-Git-Tag: xkbcommon-0.2.0~1008 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=56c3e7440ed92e03e46d2b7b77f14b917d8d9c53;p=platform%2Fupstream%2Flibxkbcommon.git keysym: Coding style cleanup Mostly tab-to-space conversion plus a few style nits. Dropped the register keywords as I'm pretty sure modern compilers can be trusted to do the right thing. --- diff --git a/src/keysym.c b/src/keysym.c index 216d6e0..9a419ba 100644 --- a/src/keysym.c +++ b/src/keysym.c @@ -36,123 +36,140 @@ authorization from the authors. #include "ks_tables.h" -char *XkbcKeysymToString(KeySym ks) +char * +XkbcKeysymToString(KeySym ks) { - register int i, n; - int h; - register int idx; + int i, n, h, idx; const unsigned char *entry; unsigned char val1, val2, val3, val4; if (!ks || (ks & ((unsigned long) ~0x1fffffff)) != 0) - return ((char *)NULL); + return NULL; + if (ks == XK_VoidSymbol) - ks = 0; - if (ks <= 0x1fffffff) - { - val1 = ks >> 24; - val2 = (ks >> 16) & 0xff; - val3 = (ks >> 8) & 0xff; - val4 = ks & 0xff; - i = ks % VTABLESIZE; - h = i + 1; - n = VMAXHASH; - while ((idx = hashKeysym[i])) - { - entry = &_XkeyTable[idx]; - if ((entry[0] == val1) && (entry[1] == val2) && + ks = 0; + + if (ks <= 0x1fffffff) { + val1 = ks >> 24; + val2 = (ks >> 16) & 0xff; + val3 = (ks >> 8) & 0xff; + val4 = ks & 0xff; + i = ks % VTABLESIZE; + h = i + 1; + n = VMAXHASH; + + while ((idx = hashKeysym[i])) { + entry = &_XkeyTable[idx]; + + if ((entry[0] == val1) && (entry[1] == val2) && (entry[2] == val3) && (entry[3] == val4)) - return ((char *)entry + 4); - if (!--n) - break; - i += h; - if (i >= VTABLESIZE) - i -= VTABLESIZE; - } + return ((char *)entry + 4); + + if (!--n) + break; + + i += h; + if (i >= VTABLESIZE) + i -= VTABLESIZE; + } } if (ks >= 0x01000100 && ks <= 0x0110ffff) { KeySym val = ks & 0xffffff; char *s; int i; + if (val & 0xff0000) i = 10; else i = 6; + s = malloc(i); - if (s == NULL) + if (!s) return s; + i--; s[i--] = '\0'; - for (; i; i--){ + for (; i; i--) { val1 = val & 0xf; val >>= 4; if (val1 < 10) - s[i] = '0'+ val1; + s[i] = '0' + val1; else - s[i] = 'A'+ val1 - 10; + s[i] = 'A' + val1 - 10; } s[i] = 'U'; return s; } - return ((char *) NULL); + + return NULL; } KeySym XkbcStringToKeysym(const char *s) { - register int i, n; - int h; - register unsigned long sig = 0; - register const char *p = s; - register int c; - register int idx; + int i, n, h, c, idx; + unsigned long sig = 0; + const char *p = s; const unsigned char *entry; unsigned char sig1, sig2; KeySym val; while ((c = *p++)) - sig = (sig << 1) + c; + sig = (sig << 1) + c; + i = sig % KTABLESIZE; h = i + 1; sig1 = (sig >> 8) & 0xff; sig2 = sig & 0xff; n = KMAXHASH; - while ((idx = hashString[i])) - { - entry = &_XkeyTable[idx]; - if ((entry[0] == sig1) && (entry[1] == sig2) && - !strcmp(s, (char *)entry + 6)) - { - val = (entry[2] << 24) | (entry[3] << 16) | - (entry[4] << 8) | entry[5]; - if (!val) - val = XK_VoidSymbol; - return val; - } - if (!--n) - break; - i += h; - if (i >= KTABLESIZE) - i -= KTABLESIZE; + + while ((idx = hashString[i])) { + entry = &_XkeyTable[idx]; + + if ((entry[0] == sig1) && (entry[1] == sig2) && + !strcmp(s, (char *)entry + 6)) + { + val = (entry[2] << 24) | (entry[3] << 16) | + (entry[4] << 8) | entry[5]; + if (!val) + val = XK_VoidSymbol; + return val; + } + + if (!--n) + break; + + i += h; + if (i >= KTABLESIZE) + i -= KTABLESIZE; } if (*s == 'U') { - val = 0; + val = 0; + for (p = &s[1]; *p; p++) { c = *p; - if ('0' <= c && c <= '9') val = (val<<4)+c-'0'; - else if ('a' <= c && c <= 'f') val = (val<<4)+c-'a'+10; - else if ('A' <= c && c <= 'F') val = (val<<4)+c-'A'+10; - else return NoSymbol; - if (val > 0x10ffff) - return NoSymbol; - } - if (val < 0x20 || (val > 0x7e && val < 0xa0)) - return NoSymbol; - if (val < 0x100) - return val; + + if ('0' <= c && c <= '9') + val = (val << 4) + c - '0'; + else if ('a' <= c && c <= 'f') + val = (val << 4) + c - 'a' + 10; + else if ('A' <= c && c <= 'F') + val = (val << 4) + c - 'A' + 10; + else + return NoSymbol; + + if (val > 0x10ffff) + return NoSymbol; + } + + if (val < 0x20 || (val > 0x7e && val < 0xa0)) + return NoSymbol; + if (val < 0x100) + return val; return val | 0x01000000; } + return NoSymbol; }