]> git.eshelyaron.com Git - emacs.git/commitdiff
Use the `realvalue' when the default binding is used.
authorGiuseppe Scrivano <gscrivano@gnu.org>
Sun, 3 Jan 2010 22:40:23 +0000 (23:40 +0100)
committerGiuseppe Scrivano <gscrivano@gnu.org>
Sun, 3 Jan 2010 22:40:23 +0000 (23:40 +0100)
src/data.c

index a5a317c3d2e089771fbef2b6ea11590f5411b907..50b5c5d2679b242f0dc60e503e99e14184bec4d2 100644 (file)
@@ -828,8 +828,15 @@ blocal_get_thread_data (struct Lisp_Buffer_Local_Value *l)
               && (! l->check_frame
                   || EQ (selected_frame, BLOCAL_FRAME_VEC (head))))
             {
-              val = XCDR (BLOCAL_CDR_VEC (head));
+              Lisp_Object v = BLOCAL_CDR_VEC (head);
               parent = head;
+
+              if (!EQ (v, XCAR (v)))
+                val = XCDR (assq_no_quit (XCAR (XCAR (it)),
+                                   XTHREADLOCAL (l->realvalue)->thread_alist));
+              else
+                val = XCDR (BLOCAL_CDR_VEC (head));
+
               break;
             }