From: Jarek Czekalski Date: Wed, 7 May 2014 15:03:47 +0000 (+0200) Subject: Fix initialization of minibuffer history variable, bug #17430. X-Git-Tag: emacs-24.3.91~31 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=73b60c4af9c5dea00158d22f91f05984202b6e64;p=emacs.git Fix initialization of minibuffer history variable, bug #17430. * minibuf.c (read_minibuf): Initialize histval to Qnil if unbound. Move the initialization up to prevent any "value void" message. --- diff --git a/src/ChangeLog b/src/ChangeLog index c1d45f1df40..027d0fc0d25 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2014-05-07 Jarek Czekalski + + Fix initialization of minibuffer history variable (Bug#17430). + * minibuf.c (read_minibuf): Initialize histval to Qnil if unbound. + Move the initialization up to prevent any "value void" message. + 2014-05-06 Samuel Bronson * keyboard.c (Frecursive_edit): Ensure inc&dec of command_loop_level diff --git a/src/minibuf.c b/src/minibuf.c index f325381d1ca..03d6104f226 100644 --- a/src/minibuf.c +++ b/src/minibuf.c @@ -535,6 +535,13 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt, if (!NILP (Vminibuffer_completing_file_name)) Vminibuffer_completing_file_name = Qlambda; + /* If variable is unbound, make it nil. */ + Lisp_Object histval = find_symbol_value (Vminibuffer_history_variable); + if (EQ (histval, Qunbound)) { + Fset (Vminibuffer_history_variable, Qnil); + histval = Qnil; + } + if (inherit_input_method) { /* `current-input-method' is buffer local. So, remember it in @@ -703,13 +710,6 @@ read_minibuf (Lisp_Object map, Lisp_Object initial, Lisp_Object prompt, { /* If the caller wanted to save the value read on a history list, then do so if the value is not already the front of the list. */ - Lisp_Object histval; - - /* If variable is unbound, make it nil. */ - - histval = find_symbol_value (Vminibuffer_history_variable); - if (EQ (histval, Qunbound)) - Fset (Vminibuffer_history_variable, Qnil); /* The value of the history variable must be a cons or nil. Other values are unacceptable. We silently ignore these values. */