aboutsummaryrefslogtreecommitdiff
path: root/libX11/src/KeysymStr.c
diff options
context:
space:
mode:
Diffstat (limited to 'libX11/src/KeysymStr.c')
-rw-r--r--libX11/src/KeysymStr.c26
1 files changed, 11 insertions, 15 deletions
diff --git a/libX11/src/KeysymStr.c b/libX11/src/KeysymStr.c
index 101f29733..c7c470468 100644
--- a/libX11/src/KeysymStr.c
+++ b/libX11/src/KeysymStr.c
@@ -70,11 +70,6 @@ SameValue(
char *XKeysymToString(KeySym ks)
{
- register int i, n;
- int h;
- register int idx;
- const unsigned char *entry;
- unsigned char val1, val2, val3, val4;
XrmDatabase keysymdb;
if (!ks || (ks & ((unsigned long) ~0x1fffffff)) != 0)
@@ -83,16 +78,17 @@ char *XKeysymToString(KeySym ks)
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;
+ unsigned char val1 = ks >> 24;
+ unsigned char val2 = (ks >> 16) & 0xff;
+ unsigned char val3 = (ks >> 8) & 0xff;
+ unsigned char val4 = ks & 0xff;
+ int i = ks % VTABLESIZE;
+ int h = i + 1;
+ int n = VMAXHASH;
+ int idx;
while ((idx = hashKeysym[i]))
{
- entry = &_XkeyTable[idx];
+ const unsigned char *entry = &_XkeyTable[idx];
if ((entry[0] == val1) && (entry[1] == val2) &&
(entry[2] == val3) && (entry[3] == val4))
return ((char *)entry + 4);
@@ -111,7 +107,7 @@ char *XKeysymToString(KeySym ks)
XrmQuark empty = NULLQUARK;
GRNData data;
- sprintf(buf, "%lX", ks);
+ snprintf(buf, sizeof(buf), "%lX", ks);
resval.addr = (XPointer)buf;
resval.size = strlen(buf) + 1;
data.name = (char *)NULL;
@@ -136,7 +132,7 @@ char *XKeysymToString(KeySym ks)
i--;
s[i--] = '\0';
for (; i; i--){
- val1 = val & 0xf;
+ unsigned char val1 = val & 0xf;
val >>= 4;
if (val1 < 10)
s[i] = '0'+ val1;