mirror of
https://github.com/vim/vim.git
synced 2025-07-25 10:54:51 -04:00
patch 9.0.1199: crash when using kitty and using a mapping with <Esc>
Problem: Crash when using kitty and using a mapping with <Esc>. Solution: Do not try setting did_simplify when it is NULL. (closes #11817)
This commit is contained in:
parent
24a8d06d7f
commit
584b853ee0
@ -1498,6 +1498,7 @@ find_special_key(
|
|||||||
key = DEL;
|
key = DEL;
|
||||||
}
|
}
|
||||||
else if (key == 27
|
else if (key == 27
|
||||||
|
&& (flags & FSK_FROM_PART) != 0
|
||||||
&& (kitty_protocol_state == KKPS_ENABLED
|
&& (kitty_protocol_state == KKPS_ENABLED
|
||||||
|| kitty_protocol_state == KKPS_DISABLED))
|
|| kitty_protocol_state == KKPS_DISABLED))
|
||||||
{
|
{
|
||||||
@ -1506,7 +1507,10 @@ find_special_key(
|
|||||||
// character and set did_simplify, then in the
|
// character and set did_simplify, then in the
|
||||||
// non-simplified keys use K_ESC.
|
// non-simplified keys use K_ESC.
|
||||||
if ((flags & FSK_SIMPLIFY) != 0)
|
if ((flags & FSK_SIMPLIFY) != 0)
|
||||||
*did_simplify = TRUE;
|
{
|
||||||
|
if (did_simplify != NULL)
|
||||||
|
*did_simplify = TRUE;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
key = K_ESC;
|
key = K_ESC;
|
||||||
}
|
}
|
||||||
|
@ -6636,8 +6636,10 @@ replace_termcodes(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
slen = trans_special(&src, result + dlen, FSK_KEYCODE
|
int fsk_flags = FSK_KEYCODE
|
||||||
| ((flags & REPTERM_NO_SIMPLIFY) ? 0 : FSK_SIMPLIFY),
|
| ((flags & REPTERM_NO_SIMPLIFY) ? 0 : FSK_SIMPLIFY)
|
||||||
|
| ((flags & REPTERM_FROM_PART) ? FSK_FROM_PART : 0);
|
||||||
|
slen = trans_special(&src, result + dlen, fsk_flags,
|
||||||
TRUE, did_simplify);
|
TRUE, did_simplify);
|
||||||
if (slen > 0)
|
if (slen > 0)
|
||||||
{
|
{
|
||||||
|
@ -695,6 +695,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1199,
|
||||||
/**/
|
/**/
|
||||||
1198,
|
1198,
|
||||||
/**/
|
/**/
|
||||||
|
@ -2818,6 +2818,7 @@ long elapsed(DWORD start_tick);
|
|||||||
#define FSK_KEEP_X_KEY 0x02 // don't translate xHome to Home key
|
#define FSK_KEEP_X_KEY 0x02 // don't translate xHome to Home key
|
||||||
#define FSK_IN_STRING 0x04 // TRUE in string, double quote is escaped
|
#define FSK_IN_STRING 0x04 // TRUE in string, double quote is escaped
|
||||||
#define FSK_SIMPLIFY 0x08 // simplify <C-H> and <A-x>
|
#define FSK_SIMPLIFY 0x08 // simplify <C-H> and <A-x>
|
||||||
|
#define FSK_FROM_PART 0x10 // left-hand-side of mapping
|
||||||
|
|
||||||
// Flags for the readdirex function, how to sort the result
|
// Flags for the readdirex function, how to sort the result
|
||||||
#define READDIR_SORT_NONE 0 // do not sort
|
#define READDIR_SORT_NONE 0 // do not sort
|
||||||
|
Loading…
x
Reference in New Issue
Block a user