diff options
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/alloc.c b/src/alloc.c index c31132820bb..359904a775a 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -5007,8 +5007,12 @@ mark_object (arg) | |||
| 5007 | struct Lisp_Overlay *ptr = XOVERLAY (obj); | 5007 | struct Lisp_Overlay *ptr = XOVERLAY (obj); |
| 5008 | mark_object (ptr->start); | 5008 | mark_object (ptr->start); |
| 5009 | mark_object (ptr->end); | 5009 | mark_object (ptr->end); |
| 5010 | obj = ptr->plist; | 5010 | mark_object (ptr->plist); |
| 5011 | goto loop; | 5011 | if (ptr->next) |
| 5012 | { | ||
| 5013 | XSETMISC (obj, ptr->next); | ||
| 5014 | goto loop; | ||
| 5015 | } | ||
| 5012 | } | 5016 | } |
| 5013 | break; | 5017 | break; |
| 5014 | 5018 | ||
| @@ -5062,7 +5066,7 @@ mark_buffer (buf) | |||
| 5062 | Lisp_Object buf; | 5066 | Lisp_Object buf; |
| 5063 | { | 5067 | { |
| 5064 | register struct buffer *buffer = XBUFFER (buf); | 5068 | register struct buffer *buffer = XBUFFER (buf); |
| 5065 | register Lisp_Object *ptr; | 5069 | register Lisp_Object *ptr, tmp; |
| 5066 | Lisp_Object base_buffer; | 5070 | Lisp_Object base_buffer; |
| 5067 | 5071 | ||
| 5068 | VECTOR_MARK (buffer); | 5072 | VECTOR_MARK (buffer); |
| @@ -5105,6 +5109,17 @@ mark_buffer (buf) | |||
| 5105 | else | 5109 | else |
| 5106 | mark_object (buffer->undo_list); | 5110 | mark_object (buffer->undo_list); |
| 5107 | 5111 | ||
| 5112 | if (buffer->overlays_before) | ||
| 5113 | { | ||
| 5114 | XSETMISC (tmp, buffer->overlays_before); | ||
| 5115 | mark_object (tmp); | ||
| 5116 | } | ||
| 5117 | if (buffer->overlays_after) | ||
| 5118 | { | ||
| 5119 | XSETMISC (tmp, buffer->overlays_after); | ||
| 5120 | mark_object (tmp); | ||
| 5121 | } | ||
| 5122 | |||
| 5108 | for (ptr = &buffer->name; | 5123 | for (ptr = &buffer->name; |
| 5109 | (char *)ptr < (char *)buffer + sizeof (struct buffer); | 5124 | (char *)ptr < (char *)buffer + sizeof (struct buffer); |
| 5110 | ptr++) | 5125 | ptr++) |