summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog6
-rw-r--r--src/minibuf.c14
2 files changed, 13 insertions, 7 deletions
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 <jarekczek@poczta.onet.pl>
+
+ 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 <naesten@gmail.com>
* 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. */