summaryrefslogtreecommitdiff
path: root/modules/im/ximcp/imLcFlt.c
diff options
context:
space:
mode:
Diffstat (limited to 'modules/im/ximcp/imLcFlt.c')
-rw-r--r--modules/im/ximcp/imLcFlt.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/modules/im/ximcp/imLcFlt.c b/modules/im/ximcp/imLcFlt.c
index 1ca19df8..3b8f69e7 100644
--- a/modules/im/ximcp/imLcFlt.c
+++ b/modules/im/ximcp/imLcFlt.c
@@ -49,7 +49,8 @@ _XimLocalFilter(d, w, ev, client_data)
Xic ic = (Xic)client_data;
KeySym keysym;
static char buf[256];
- DefTree *p;
+ DefTree *b = ic->private.local.base.tree;
+ DTIndex t;
if(ev->xkey.keycode == 0)
return (False);
@@ -74,7 +75,7 @@ _XimLocalFilter(d, w, ev, client_data)
if(ic->private.local.brl_committing) {
ic->private.local.brl_committed =
ic->private.local.brl_committing;
- ic->private.local.composed = NULL;
+ ic->private.local.composed = 0;
ev->type = KeyPress;
ev->xkey.keycode = 0;
_XPutBackEvent(d, ev);
@@ -85,22 +86,21 @@ _XimLocalFilter(d, w, ev, client_data)
}
if( (ev->type != KeyPress)
- || (((Xim)ic->core.im)->private.local.top == (DefTree *)NULL) )
+ || (((Xim)ic->core.im)->private.local.top == 0 ) )
return(False);
- for(p = ic->private.local.context; p; p = p->next) {
- if(((ev->xkey.state & p->modifier_mask) == p->modifier) &&
- (keysym == p->keysym)) {
+ for(t = ic->private.local.context; t; t = b[t].next) {
+ if(((ev->xkey.state & b[t].modifier_mask) == b[t].modifier) &&
+ (keysym == b[t].keysym))
break;
- }
}
- if(p) { /* Matched */
- if(p->succession) { /* Intermediate */
- ic->private.local.context = p->succession;
+ if(t) { /* Matched */
+ if(b[t].succession) { /* Intermediate */
+ ic->private.local.context = b[t].succession;
return(True);
} else { /* Terminate (reached to leaf) */
- ic->private.local.composed = p;
+ ic->private.local.composed = t;
ic->private.local.brl_committed = 0;
/* return back to client KeyPressEvent keycode == 0 */
ev->xkey.keycode = 0;