Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 1138439

Browse files
Issue #25203: Failed readline.set_completer_delims() no longer left the
module in inconsistent state.
1 parent 87d0066 commit 1138439

2 files changed

Lines changed: 8 additions & 4 deletions

File tree

Misc/NEWS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,9 @@ Core and Builtins
8181
Library
8282
-------
8383

84+
- Issue #25203: Failed readline.set_completer_delims() no longer left the
85+
module in inconsistent state.
86+
8487
- Prevent overflow in _Unpickler_Read.
8588

8689
- Issue #25047: The XML encoding declaration written by Element Tree now

Modules/readline.c

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -427,10 +427,11 @@ set_completer_delims(PyObject *self, PyObject *args)
427427
/* Keep a reference to the allocated memory in the module state in case
428428
some other module modifies rl_completer_word_break_characters
429429
(see issue #17289). */
430-
free(completer_word_break_characters);
431-
completer_word_break_characters = strdup(break_chars);
432-
if (completer_word_break_characters) {
433-
rl_completer_word_break_characters = completer_word_break_characters;
430+
break_chars = strdup(break_chars);
431+
if (break_chars) {
432+
free(completer_word_break_characters);
433+
completer_word_break_characters = break_chars;
434+
rl_completer_word_break_characters = break_chars;
434435
Py_RETURN_NONE;
435436
}
436437
else

0 commit comments

Comments
 (0)