1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-26 07:33:47 +00:00

* print.c (print_object): Adjust to match new layout of sub char-table

(Bug#17898).
This commit is contained in:
Dmitry Antipov 2014-07-02 18:00:41 +04:00
parent fe1c6a42c9
commit 15c1107a30
2 changed files with 11 additions and 2 deletions

View File

@ -15,6 +15,7 @@
(map_sub_char_table_for_charset, uniprop_table_uncompress):
All related users changed.
* lread.c (read1): Adjust to match new layout of sub char-table.
* print.c (print_object): Likewise (Bug#17898).
2014-07-02 Stefan Monnier <monnier@iro.umontreal.ca>

View File

@ -1981,16 +1981,24 @@ print_object (Lisp_Object obj, Lisp_Object printcharfun, bool escapeflag)
PRINTCHAR ('[');
{
register int i;
int i, idx = SUB_CHAR_TABLE_P (obj) ? SUB_CHAR_TABLE_OFFSET : 0;
register Lisp_Object tem;
ptrdiff_t real_size = size;
/* For a sub char-table, print heading non-Lisp data first. */
if (SUB_CHAR_TABLE_P (obj))
{
i = sprintf (buf, "%d %d", XSUB_CHAR_TABLE (obj)->depth,
XSUB_CHAR_TABLE (obj)->min_char);
strout (buf, i, i, printcharfun);
}
/* Don't print more elements than the specified maximum. */
if (NATNUMP (Vprint_length)
&& XFASTINT (Vprint_length) < size)
size = XFASTINT (Vprint_length);
for (i = 0; i < size; i++)
for (i = idx; i < size; i++)
{
if (i) PRINTCHAR (' ');
tem = AREF (obj, i);