diff options
| author | Federico Tedin <federicotedin@gmail.com> | 2020-01-29 22:24:40 +0100 |
|---|---|---|
| committer | Eli Zaretskii <eliz@gnu.org> | 2020-01-31 11:17:41 +0200 |
| commit | 2e66013dcf1e139436cc806725e0b04945be55a9 (patch) | |
| tree | d973884fe9f6ce4e02ae63f1328d55abe2c20894 /src | |
| parent | de411615344d1551d685e45b0739e1f738cf4afd (diff) | |
| download | emacs-2e66013dcf1e139436cc806725e0b04945be55a9.tar.gz | |
Ensure minibuffer input is added to history in read_minibuf
* src/minibuf.c (read_minibuf): Parse input string after saving
the string to the history list instead of before, in case parsing
signals an error or is interrupted by C-g. (Bug#39291)
Diffstat (limited to 'src')
| -rw-r--r-- | src/minibuf.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/minibuf.c b/src/minibuf.c index c5f61456900..b837cc53eb9 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -696,10 +696,6 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt, else histstring = Qnil; - /* If Lisp form desired instead of string, parse it. */ - if (expflag) - val = string_to_object (val, defalt); - /* The appropriate frame will get selected in set-window-configuration. */ unbind_to (count, Qnil); @@ -710,6 +706,10 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt, if (! (NILP (Vhistory_add_new_input) || NILP (histstring))) call2 (intern ("add-to-history"), histvar, histstring); + /* If Lisp form desired instead of string, parse it. */ + if (expflag) + val = string_to_object (val, defalt); + return val; } |
