]> git.eshelyaron.com Git - emacs.git/commitdiff
(print_preprocess): Preprocess the key_and_value table of
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 30 Nov 2009 21:08:25 +0000 (21:08 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 30 Nov 2009 21:08:25 +0000 (21:08 +0000)
hashtables, even tho they're "hidden" (bug#5082).

src/ChangeLog
src/print.c

index 7d5525c781e0d281f83017821877d6855f2875eb..4d539a308610caa02d2b18efb93c1df2191e815f 100644 (file)
@@ -1,3 +1,8 @@
+2009-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * print.c (print_preprocess): Preprocess the key_and_value table of
+       hashtables, even tho they're "hidden" (bug#5082).
+
 2009-11-29  Jan Djärv  <jan.h.d@swipnet.se>
 
        * frame.c (frame_make_pointer_invisible)
@@ -16,7 +21,7 @@
        * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
 
        * frame.c (frame_make_pointer_invisible)
-       (frame_make_pointer_visible): Just return if there isn't any selected 
+       (frame_make_pointer_visible): Just return if there isn't any selected
        frame.
 
        * search.c (simple_search): Remove warning by making *p const.
index a011cb885fac6f3487374a38df8766ee86c6133c..764572fedfc740483971235811fabb083fa1127e 100644 (file)
@@ -1416,6 +1416,13 @@ print_preprocess (obj)
            size &= PSEUDOVECTOR_SIZE_MASK;
          for (i = 0; i < size; i++)
            print_preprocess (XVECTOR (obj)->contents[i]);
+         if (HASH_TABLE_P (obj))
+           { /* For hash tables, the key_and_value slot is past
+               `size' because it needs to be marked specially in case
+               the table is weak.  */
+             struct Lisp_Hash_Table *h = XHASH_TABLE (obj);
+             print_preprocess (h->key_and_value);
+           }
          break;
 
        default: