comparison src/marker.c @ 85014:ad5045db16f7

(Fmarker_buffer): Make test for odd case into a failure.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Tue, 02 Oct 2007 21:05:39 +0000
parents 922696f363b0
children 107ccd98fa12 bdb3fe0ba9fa
comparison
equal deleted inserted replaced
85013:92fa2952cd73 85014:ad5045db16f7
450 register Lisp_Object buf; 450 register Lisp_Object buf;
451 CHECK_MARKER (marker); 451 CHECK_MARKER (marker);
452 if (XMARKER (marker)->buffer) 452 if (XMARKER (marker)->buffer)
453 { 453 {
454 XSETBUFFER (buf, XMARKER (marker)->buffer); 454 XSETBUFFER (buf, XMARKER (marker)->buffer);
455 /* Return marker's buffer only if it is not dead. */ 455 /* If the buffer is dead, we're in trouble: the buffer pointer here
456 if (!NILP (XBUFFER (buf)->name)) 456 does not preserve the buffer from being GC'd (it's weak), so
457 return buf; 457 markers have to be unlinked from their buffer as soon as the buffer
458 is killed. */
459 eassert (!NILP (XBUFFER (buf)->name));
460 return buf;
458 } 461 }
459 return Qnil; 462 return Qnil;
460 } 463 }
461 464
462 DEFUN ("marker-position", Fmarker_position, Smarker_position, 1, 1, 0, 465 DEFUN ("marker-position", Fmarker_position, Smarker_position, 1, 1, 0,