comparison src/print.c @ 90143:146c086df160

Revision: miles@gnu.org--gnu-2005/emacs--unicode--0--patch-37 Merge from emacs--cvs-trunk--0 Patches applied: * emacs--cvs-trunk--0 (patch 241-257) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 59-65) - Update from CVS - Merge from emacs--cvs-trunk--0 - (mm-string-to-multibyte): Use Gnus trunk definition.
author Miles Bader <miles@gnu.org>
date Thu, 14 Apr 2005 05:03:52 +0000
parents cb7f41387eb3 88c04d73f43d
children f9a65d7ebd29
comparison
equal deleted inserted replaced
90142:627771f44771 90143:146c086df160
1 /* Lisp object printing and output streams. 1 /* Lisp object printing and output streams.
2 Copyright (C) 1985, 86, 88, 93, 94, 95, 97, 98, 1999, 2000, 01, 03, 2004 2 Copyright (C) 1985, 1986, 1988, 1993, 1994, 1995, 1997, 1998, 1999,
3 Free Software Foundation, Inc. 3 2000, 2001, 2003, 2004, 2005 Free Software Foundation, Inc.
4 4
5 This file is part of GNU Emacs. 5 This file is part of GNU Emacs.
6 6
7 GNU Emacs is free software; you can redistribute it and/or modify 7 GNU Emacs is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
210 Fset_buffer (printcharfun); \ 210 Fset_buffer (printcharfun); \
211 printcharfun = Qnil; \ 211 printcharfun = Qnil; \
212 } \ 212 } \
213 if (MARKERP (printcharfun)) \ 213 if (MARKERP (printcharfun)) \
214 { \ 214 { \
215 if (!(XMARKER (original)->buffer)) \ 215 EMACS_INT marker_pos; \
216 if (!(XMARKER (printcharfun)->buffer)) \
216 error ("Marker does not point anywhere"); \ 217 error ("Marker does not point anywhere"); \
217 if (XMARKER (original)->buffer != current_buffer) \ 218 if (XMARKER (printcharfun)->buffer != current_buffer) \
218 set_buffer_internal (XMARKER (original)->buffer); \ 219 set_buffer_internal (XMARKER (printcharfun)->buffer); \
220 marker_pos = marker_position (printcharfun); \
221 if (marker_pos < BEGV || marker_pos > ZV) \
222 error ("Marker is outside the accessible part of the buffer"); \
219 old_point = PT; \ 223 old_point = PT; \
220 old_point_byte = PT_BYTE; \ 224 old_point_byte = PT_BYTE; \
221 SET_PT_BOTH (marker_position (printcharfun), \ 225 SET_PT_BOTH (marker_pos, \
222 marker_byte_position (printcharfun)); \ 226 marker_byte_position (printcharfun)); \
223 start_point = PT; \ 227 start_point = PT; \
224 start_point_byte = PT_BYTE; \ 228 start_point_byte = PT_BYTE; \
225 printcharfun = Qnil; \ 229 printcharfun = Qnil; \
226 } \ 230 } \