Mercurial > emacs
comparison src/undo.c @ 30961:78ce106d272e
(record_first_change, record_marker_adjustment): Don'use
XBUFFER on last_undo_buffer which might not be a buffer.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Sat, 19 Aug 2000 12:33:00 +0000 |
parents | 5583737fcf85 |
children | 8d46095169e8 |
comparison
equal
deleted
inserted
replaced
30960:c598e9bfdce2 | 30961:78ce106d272e |
---|---|
165 | 165 |
166 /* Allocate a cons cell to be the undo boundary after this command. */ | 166 /* Allocate a cons cell to be the undo boundary after this command. */ |
167 if (NILP (pending_boundary)) | 167 if (NILP (pending_boundary)) |
168 pending_boundary = Fcons (Qnil, Qnil); | 168 pending_boundary = Fcons (Qnil, Qnil); |
169 | 169 |
170 if (current_buffer != XBUFFER (last_undo_buffer)) | 170 if (!BUFFERP (last_undo_buffer) |
171 || current_buffer != XBUFFER (last_undo_buffer)) | |
171 Fundo_boundary (); | 172 Fundo_boundary (); |
172 XSETBUFFER (last_undo_buffer, current_buffer); | 173 XSETBUFFER (last_undo_buffer, current_buffer); |
173 | 174 |
174 current_buffer->undo_list | 175 current_buffer->undo_list |
175 = Fcons (Fcons (marker, make_number (adjustment)), | 176 = Fcons (Fcons (marker, make_number (adjustment)), |
199 struct buffer *base_buffer = current_buffer; | 200 struct buffer *base_buffer = current_buffer; |
200 | 201 |
201 if (EQ (current_buffer->undo_list, Qt)) | 202 if (EQ (current_buffer->undo_list, Qt)) |
202 return; | 203 return; |
203 | 204 |
204 if (current_buffer != XBUFFER (last_undo_buffer)) | 205 if (!BUFFERP (last_undo_buffer) |
206 || current_buffer != XBUFFER (last_undo_buffer)) | |
205 Fundo_boundary (); | 207 Fundo_boundary (); |
206 XSETBUFFER (last_undo_buffer, current_buffer); | 208 XSETBUFFER (last_undo_buffer, current_buffer); |
207 | 209 |
208 if (base_buffer->base_buffer) | 210 if (base_buffer->base_buffer) |
209 base_buffer = base_buffer->base_buffer; | 211 base_buffer = base_buffer->base_buffer; |