1
0
forked from aniani/vim

patch 9.0.0513: may not be able to use a pattern ad the debug prompt

Problem:    May not be able to use a pattern ad the debug prompt.
Solution:   Temporarily disable the timeout. (closes #11164)
This commit is contained in:
Bram Moolenaar
2022-09-20 13:51:25 +01:00
parent c14bfc31d9
commit 9781d9c005
4 changed files with 34 additions and 0 deletions

View File

@@ -80,6 +80,34 @@ disable_regexp_timeout(void)
}
#endif
#if defined(FEAT_EVAL) || defined(PROTO)
# ifdef FEAT_RELTIME
static sig_atomic_t *saved_timeout_flag;
# endif
/*
* Used at the debug prompt: disable the timeout so that expression evaluation
* can used patterns.
* Must be followed by calling restore_timeout_for_debugging().
*/
void
save_timeout_for_debugging(void)
{
# ifdef FEAT_RELTIME
saved_timeout_flag = (sig_atomic_t *)timeout_flag;
timeout_flag = &dummy_timeout_flag;
# endif
}
void
restore_timeout_for_debugging(void)
{
# ifdef FEAT_RELTIME
timeout_flag = saved_timeout_flag;
# endif
}
#endif
/*
* The first byte of the BT regexp internal "program" is actually this magic
* number; the start node begins in the second byte. It's used to catch the