| -rw-r--r-- | lib/readline/isearch.c | 8 |
diff --git a/lib/readline/isearch.c b/lib/readline/isearch.c index 7b845c20..6cb1879d 100644 --- a/lib/readline/isearch.c +++ b/lib/readline/isearch.c @@ -889,12 +889,14 @@ opcode_dispatch: int _rl_isearch_cleanup (_rl_search_cxt *cxt, int r) { + RL_UNSETSTATE(RL_STATE_ISEARCH); + if (cxt == 0) + return (r != 0); + + _rl_iscxt = 0; if (r >= 0) _rl_isearch_fini (cxt); _rl_scxt_dispose (cxt, 0); - _rl_iscxt = 0; - - RL_UNSETSTATE(RL_STATE_ISEARCH); return (r != 0); } |