don't call rl_initialize when stdout is not a tty
diff --git a/Modules/readline.c b/Modules/readline.c
index 20a16c5..7c573a1 100644
--- a/Modules/readline.c
+++ b/Modules/readline.c
@@ -933,19 +933,15 @@
begidx = PyInt_FromLong(0L);
endidx = PyInt_FromLong(0L);
-#ifndef __APPLE__
if (!isatty(STDOUT_FILENO)) {
/* Issue #19884: stdout is no a terminal. Disable meta modifier
keys to not write the ANSI sequence "\033[1034h" into stdout. On
terminals supporting 8 bit characters like TERM=xterm-256color
(which is now the default Fedora since Fedora 18), the meta key is
used to enable support of 8 bit characters (ANSI sequence
- "\033[1034h").
-
- With libedit, this call makes readline() crash. */
+ "\033[1034h"). */
rl_variable_bind ("enable-meta-key", "off");
}
-#endif
/* Initialize (allows .inputrc to override)
*
@@ -957,6 +953,7 @@
rl_read_init_file(NULL);
else
#endif /* __APPLE__ */
+ if (isatty(STDOUT_FILENO))
rl_initialize();
RESTORE_LOCALE(saved_locale)