aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.c
diff options
context:
space:
mode:
authorDmitry Antipov2012-07-06 11:34:37 +0400
committerDmitry Antipov2012-07-06 11:34:37 +0400
commit7b7ae96547e53a8ba059186fd0b3fd583e8d41cd (patch)
tree5b5bc00564e76ac9c278ac1978f655fca0d148b7 /src/buffer.c
parenta358bac20f90ddbcb46304c77322f07323b9b25d (diff)
downloademacs-7b7ae96547e53a8ba059186fd0b3fd583e8d41cd.tar.gz
emacs-7b7ae96547e53a8ba059186fd0b3fd583e8d41cd.zip
* buffer.c (unchain_overlay): Simplify. Add comment.
* marker.c (unchain_marker): Simplify. Fix comments.
Diffstat (limited to 'src/buffer.c')
-rw-r--r--src/buffer.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/buffer.c b/src/buffer.c
index a37a61c0fc8..a40270c945c 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -3672,18 +3672,17 @@ modify_overlay (struct buffer *buf, ptrdiff_t start, ptrdiff_t end)
3672 ++BUF_OVERLAY_MODIFF (buf); 3672 ++BUF_OVERLAY_MODIFF (buf);
3673} 3673}
3674 3674
3675 3675/* Remove OVERLAY from LIST. */
3676
3676static struct Lisp_Overlay * 3677static struct Lisp_Overlay *
3677unchain_overlay (struct Lisp_Overlay *list, struct Lisp_Overlay *overlay) 3678unchain_overlay (struct Lisp_Overlay *list, struct Lisp_Overlay *overlay)
3678{ 3679{
3679 struct Lisp_Overlay *tmp, *prev; 3680 register struct Lisp_Overlay *tail, **prev = &list;
3680 for (tmp = list, prev = NULL; tmp; prev = tmp, tmp = tmp->next) 3681
3681 if (tmp == overlay) 3682 for (tail = list; tail; prev = &tail->next, tail = *prev)
3683 if (tail == overlay)
3682 { 3684 {
3683 if (prev) 3685 *prev = overlay->next;
3684 prev->next = tmp->next;
3685 else
3686 list = tmp->next;
3687 overlay->next = NULL; 3686 overlay->next = NULL;
3688 break; 3687 break;
3689 } 3688 }