aboutsummaryrefslogtreecommitdiffstats
path: root/src/buffer.c
diff options
context:
space:
mode:
authorDmitry Antipov <[email protected]>2012-07-06 11:34:37 +0400
committerDmitry Antipov <[email protected]>2012-07-06 11:34:37 +0400
commit7b7ae96547e53a8ba059186fd0b3fd583e8d41cd (patch)
tree5b5bc00564e76ac9c278ac1978f655fca0d148b7 /src/buffer.c
parenta358bac20f90ddbcb46304c77322f07323b9b25d (diff)
* 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 a37a61c0fc..a40270c945 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -3672,18 +3672,17 @@ modify_overlay (struct buffer *buf, ptrdiff_t start, ptrdiff_t end)
++BUF_OVERLAY_MODIFF (buf);
}
-
+/* Remove OVERLAY from LIST. */
+
static struct Lisp_Overlay *
unchain_overlay (struct Lisp_Overlay *list, struct Lisp_Overlay *overlay)
{
- struct Lisp_Overlay *tmp, *prev;
- for (tmp = list, prev = NULL; tmp; prev = tmp, tmp = tmp->next)
- if (tmp == overlay)
+ register struct Lisp_Overlay *tail, **prev = &list;
+
+ for (tail = list; tail; prev = &tail->next, tail = *prev)
+ if (tail == overlay)
{
- if (prev)
- prev->next = tmp->next;
- else
- list = tmp->next;
+ *prev = overlay->next;
overlay->next = NULL;
break;
}