summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2014-09-04 18:09:49 +0300
committerEli Zaretskii <eliz@gnu.org>2014-09-04 18:09:49 +0300
commite97a29cbecc8765aad2bfea5940e215789d4cd7c (patch)
treefaf4a4b00163f1df7399722329347bdcf607f446
parentf8c4cd6e058ea981011545fc656c42df8cb85087 (diff)
downloademacs-e97a29cbecc8765aad2bfea5940e215789d4cd7c.tar.gz
Fix bug #18331 with "C-h k C-g" not showing documentation on Windows.
src/data.c (set_internal): Use assq_no_quit, not Fassq, to find an existing binding of a variable, to avoid silently aborting commands that use specbind.
-rw-r--r--src/ChangeLog6
-rw-r--r--src/data.c8
2 files changed, 10 insertions, 4 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 5f00b654261..a1d604b56d4 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2014-09-04 Eli Zaretskii <eliz@gnu.org>
+
+ * data.c (set_internal): Use assq_no_quit, not Fassq, to find an
+ existing binding of a variable, to avoid silently aborting
+ commands that use specbind. (Bug#18331)
+
2014-09-02 Eli Zaretskii <eliz@gnu.org>
* dispnew.c (buffer_posn_from_coords): Fix an off-by-one error in
diff --git a/src/data.c b/src/data.c
index 4cb569bd943..5aeb24b16dc 100644
--- a/src/data.c
+++ b/src/data.c
@@ -1241,10 +1241,10 @@ set_internal (Lisp_Object symbol, Lisp_Object newval, Lisp_Object where,
/* Find the new binding. */
XSETSYMBOL (symbol, sym); /* May have changed via aliasing. */
- tem1 = Fassq (symbol,
- (blv->frame_local
- ? XFRAME (where)->param_alist
- : BVAR (XBUFFER (where), local_var_alist)));
+ tem1 = assq_no_quit (symbol,
+ (blv->frame_local
+ ? XFRAME (where)->param_alist
+ : BVAR (XBUFFER (where), local_var_alist)));
set_blv_where (blv, where);
blv->found = 1;