diff --git a/ext/readline/readline.c b/ext/readline/readline.c index 9c637427f75..29c96791a8f 100644 --- a/ext/readline/readline.c +++ b/ext/readline/readline.c @@ -626,6 +626,11 @@ PHP_FUNCTION(readline_callback_handler_remove) Ask readline to redraw the display */ PHP_FUNCTION(readline_redisplay) { +#if HAVE_LIBEDIT + /* seems libedit doesn't take care of rl_initialize in rl_redisplay + * see bug #72538 */ + using_history(); +#endif rl_redisplay(); } /* }}} */ diff --git a/ext/readline/tests/bug72538.phpt b/ext/readline/tests/bug72538.phpt new file mode 100644 index 00000000000..98b9b2651e3 --- /dev/null +++ b/ext/readline/tests/bug72538.phpt @@ -0,0 +1,15 @@ +--TEST-- +Bug #72538 (readline_redisplay crashes php) +--SKIPIF-- + +--FILE-- + +okey +--EXPECT-- +okey