comparison src/term.c @ 30934:a07193ed51cd v9.0.0801

patch 9.0.0801: the modifyOtherKeys flag is set when it should not Commit: https://github.com/vim/vim/commit/7609c88eedc113bc80ccf74050b03a2e0c1a3c5e Author: Bram Moolenaar <Bram@vim.org> Date: Wed Oct 19 20:07:09 2022 +0100 patch 9.0.0801: the modifyOtherKeys flag is set when it should not Problem: The modifyOtherKeys flag is set when it should not. Solution: Do not handle special key codes with a modifer value above 16 as a modifyOtherKeys value. (issue #11403)
author Bram Moolenaar <Bram@vim.org>
date Wed, 19 Oct 2022 21:15:03 +0200
parents 58cb6591ad12
children 122f883d7237
comparison
equal deleted inserted replaced
30933:208ea15f4c23 30934:a07193ed51cd
5043 } 5043 }
5044 5044
5045 // Key with modifier: 5045 // Key with modifier:
5046 // {lead}27;{modifier};{key}~ 5046 // {lead}27;{modifier};{key}~
5047 // {lead}{key};{modifier}u 5047 // {lead}{key};{modifier}u
5048 else if ((arg[0] == 27 && argc == 3 && trail == '~') 5048 // Only handles four modifiers, this won't work if the modifier value is
5049 || (argc == 2 && trail == 'u')) 5049 // more than 16.
5050 else if (((arg[0] == 27 && argc == 3 && trail == '~')
5051 || (argc == 2 && trail == 'u'))
5052 && arg[1] <= 16)
5050 { 5053 {
5051 return len + handle_key_with_modifier(arg, trail, 5054 return len + handle_key_with_modifier(arg, trail,
5052 csi_len, offset, buf, bufsize, buflen); 5055 csi_len, offset, buf, bufsize, buflen);
5053 } 5056 }
5054 5057