… | |
… | |
151 | |
151 | |
152 | free (translation); |
152 | free (translation); |
153 | return; |
153 | return; |
154 | } |
154 | } |
155 | else |
155 | else |
156 | rxvt_warn ("cannot parse list-type keysym '%s', processing as normal keysym.\n", translation); |
156 | rxvt_warn ("unable to parse list-type keysym '%s', processing as normal keysym.\n", translation); |
157 | } |
157 | } |
158 | |
158 | |
159 | register_translation (keysym, state, translation); |
159 | register_translation (keysym, state, translation); |
160 | } |
160 | } |
161 | |
161 | |
… | |
… | |
178 | } |
178 | } |
179 | else |
179 | else |
180 | { |
180 | { |
181 | delete key; |
181 | delete key; |
182 | free (translation); |
182 | free (translation); |
183 | rxvt_fatal ("out of memory, aborting.\n"); |
183 | rxvt_fatal ("memory allocation failure. aborting.\n"); |
184 | } |
184 | } |
185 | } |
185 | } |
186 | |
186 | |
187 | void |
187 | void |
188 | keyboard_manager::register_keymap (keysym_t *key) |
188 | keyboard_manager::register_keymap (keysym_t *key) |
… | |
… | |
201 | } |
201 | } |
202 | |
202 | |
203 | bool |
203 | bool |
204 | keyboard_manager::dispatch (rxvt_term *term, KeySym keysym, unsigned int state) |
204 | keyboard_manager::dispatch (rxvt_term *term, KeySym keysym, unsigned int state) |
205 | { |
205 | { |
206 | assert (hash[0] == 0 && "register_done() need to be called"); |
206 | assert (("register_done() need to be called", hash[0] == 0)); |
207 | |
207 | |
208 | state &= OtherModMask; // mask out uninteresting modifiers |
208 | state &= OtherModMask; // mask out uninteresting modifiers |
209 | |
209 | |
210 | if (state & term->ModMetaMask) state |= MetaMask; |
210 | if (state & term->ModMetaMask) state |= MetaMask; |
211 | if (state & term->ModNumLockMask) state |= NumLockMask; |
211 | if (state & term->ModNumLockMask) state |= NumLockMask; |