Make use of a scoped_restore object in tui_mld_read_key instead of
doing a manual save/restore.
I don't think the existing code can throw an exception, so this is
just a cleanup rather than a bug fix.
There should be no user visible changes after this commit.
static int
tui_mld_read_key (const struct match_list_displayer *displayer)
{
- rl_getc_func_t *prev = rl_getc_function;
- int c;
-
/* We can't use tui_getc as we need NEWLINE to not get emitted. */
- rl_getc_function = tui_mld_getc;
- c = rl_read_key ();
- rl_getc_function = prev;
- return c;
+ scoped_restore restore_getc_function
+ = make_scoped_restore (&rl_getc_function, tui_mld_getc);
+ return rl_read_key ();
}
/* TUI version of rl_completion_display_matches_hook.