Mercurial > emacs
comparison src/buffer.c @ 25491:0359edc6e428
(set_buffer_internal): Never set
windows_or_buffers_changed.
| author | Gerd Moellmann <gerd@gnu.org> |
|---|---|
| date | Thu, 02 Sep 1999 20:35:53 +0000 |
| parents | f9949db6ca7d |
| children | b65b5bdae65a |
comparison
equal
deleted
inserted
replaced
| 25490:af3e44ec3b8c | 25491:0359edc6e428 |
|---|---|
| 1428 register Lisp_Object buf; | 1428 register Lisp_Object buf; |
| 1429 XSETBUFFER (buf, current_buffer); | 1429 XSETBUFFER (buf, current_buffer); |
| 1430 return buf; | 1430 return buf; |
| 1431 } | 1431 } |
| 1432 | 1432 |
| 1433 /* Set the current buffer to B. */ | 1433 /* Set the current buffer to B. |
| 1434 | |
| 1435 We previously set windows_or_buffers_changed here to invalidate | |
| 1436 global unchanged information in beg_unchanged and end_unchanged. | |
| 1437 This is no longer necessary because we now compute unchanged | |
| 1438 information on a buffer-basis. Every action affecting other | |
| 1439 windows than the selected one requires a select_window at some | |
| 1440 time, and that increments windows_or_buffers_changed. */ | |
| 1434 | 1441 |
| 1435 void | 1442 void |
| 1436 set_buffer_internal (b) | 1443 set_buffer_internal (b) |
| 1437 register struct buffer *b; | 1444 register struct buffer *b; |
| 1438 { | 1445 { |
| 1439 if (current_buffer != b) | 1446 if (current_buffer != b) |
| 1440 { | 1447 set_buffer_internal_1 (b); |
| 1441 /* Set windows_or_buffers_changed only if buffer is displayed | |
| 1442 somewhere. This enables redisplay optimizations if a | |
| 1443 background task like deferred fontification changes buffers, | |
| 1444 but none that are currently displayed. */ | |
| 1445 if (!windows_or_buffers_changed | |
| 1446 && selected_frame) | |
| 1447 { | |
| 1448 Lisp_Object buffer; | |
| 1449 XSETBUFFER (buffer, b); | |
| 1450 if (!NILP (Fget_buffer_window (buffer, Qvisible))) | |
| 1451 ++windows_or_buffers_changed; | |
| 1452 } | |
| 1453 | |
| 1454 set_buffer_internal_1 (b); | |
| 1455 } | |
| 1456 } | 1448 } |
| 1457 | 1449 |
| 1458 /* Set the current buffer to B, and do not set windows_or_buffers_changed. | 1450 /* Set the current buffer to B, and do not set windows_or_buffers_changed. |
| 1459 This is used by redisplay. */ | 1451 This is used by redisplay. */ |
| 1460 | 1452 |
