Issue #25203: Failed readline.set_completer_delims() no longer left the

module in inconsistent state.
This commit is contained in:
Serhiy Storchaka 2015-09-27 22:34:59 +03:00
parent 87d0066f1a
commit 1138439376
2 changed files with 8 additions and 4 deletions

View File

@ -81,6 +81,9 @@ Core and Builtins
Library
-------
- Issue #25203: Failed readline.set_completer_delims() no longer left the
module in inconsistent state.
- Prevent overflow in _Unpickler_Read.
- Issue #25047: The XML encoding declaration written by Element Tree now

View File

@ -427,10 +427,11 @@ set_completer_delims(PyObject *self, PyObject *args)
/* Keep a reference to the allocated memory in the module state in case
some other module modifies rl_completer_word_break_characters
(see issue #17289). */
free(completer_word_break_characters);
completer_word_break_characters = strdup(break_chars);
if (completer_word_break_characters) {
rl_completer_word_break_characters = completer_word_break_characters;
break_chars = strdup(break_chars);
if (break_chars) {
free(completer_word_break_characters);
completer_word_break_characters = break_chars;
rl_completer_word_break_characters = break_chars;
Py_RETURN_NONE;
}
else