# HG changeset patch # User Jim Blandy # Date 737420230 0 # Node ID 4f234fbfb02c4b7eeb317481fe6b28fc4467fb6d # Parent cf431814ce6aae8352218952dbcf7cb112da4b37 * buffer.c (Fmove_overlay): If the overlay is in no buffer and the BUFFER argument has been omitted, put it in the current buffer, for symmetry with move-marker. * buffer.c (Fdelete_overlay): Make the overlay's markers point nowhere, not at 1. Do this after calling redisplay_region, so that code knows what section has changed. diff -r cf431814ce6a -r 4f234fbfb02c src/buffer.c --- a/src/buffer.c Fri May 14 22:11:17 1993 +0000 +++ b/src/buffer.c Fri May 14 22:57:10 1993 +0000 @@ -1506,7 +1506,9 @@ DEFUN ("move-overlay", Fmove_overlay, Smove_overlay, 3, 4, 0, "Set the endpoints of OVERLAY to BEG and END in BUFFER.\n\ -If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now.") +If BUFFER is omitted, leave OVERLAY in the same buffer it inhabits now.\n\ +If BUFFER is omitted, and OVERLAY is in no buffer, put it in the current\n\ +buffer.") (overlay, beg, end, buffer) Lisp_Object overlay, beg, end, buffer; { @@ -1515,6 +1517,8 @@ CHECK_OVERLAY (overlay, 0); if (NILP (buffer)) buffer = Fmarker_buffer (OVERLAY_START (overlay)); + if (NILP (buffer)) + XSET (buffer, Lisp_Buffer, current_buffer); CHECK_BUFFER (buffer, 3); CHECK_NUMBER_COERCE_MARKER (beg, 1); CHECK_NUMBER_COERCE_MARKER (end, 1); @@ -1581,13 +1585,13 @@ b->overlays_before = Fdelq (overlay, b->overlays_before); b->overlays_after = Fdelq (overlay, b->overlays_after); - Fset_marker (OVERLAY_START (overlay), 1, Qnil); - Fset_marker (OVERLAY_END (overlay), 1, Qnil); - redisplay_region (b, OVERLAY_POSITION (OVERLAY_START (overlay)), OVERLAY_POSITION (OVERLAY_END (overlay))); + Fset_marker (OVERLAY_START (overlay), Qnil, Qnil); + Fset_marker (OVERLAY_END (overlay), Qnil, Qnil); + return Qnil; }