(print_preprocess): Preprocess the key_and_value table of

hashtables, even tho they're "hidden" (bug#5082).
This commit is contained in:
Stefan Monnier 2009-11-30 21:08:25 +00:00
parent 67296dda1e
commit 3e0de07fa8
2 changed files with 13 additions and 1 deletions

View 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.

View 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: