diff options
| author | Jim Blandy | 1992-05-18 08:14:41 +0000 |
|---|---|---|
| committer | Jim Blandy | 1992-05-18 08:14:41 +0000 |
| commit | ffd56f97cf56501f7a6981c184192e9043e4eafd (patch) | |
| tree | d463f4585c85fa76b33d3663271bbb4126d7b116 /src/buffer.c | |
| parent | 502ddf238f0ed280a301426804b2ed16ec1c49cc (diff) | |
| download | emacs-ffd56f97cf56501f7a6981c184192e9043e4eafd.tar.gz emacs-ffd56f97cf56501f7a6981c184192e9043e4eafd.zip | |
*** empty log message ***
Diffstat (limited to 'src/buffer.c')
| -rw-r--r-- | src/buffer.c | 45 |
1 files changed, 26 insertions, 19 deletions
diff --git a/src/buffer.c b/src/buffer.c index fbf6bb8b611..de9e4246f80 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -558,11 +558,22 @@ If BUFFER is omitted or nil, some interesting buffer is returned.") | |||
| 558 | DEFUN ("buffer-disable-undo", Fbuffer_disable_undo, Sbuffer_disable_undo, 1,1, | 558 | DEFUN ("buffer-disable-undo", Fbuffer_disable_undo, Sbuffer_disable_undo, 1,1, |
| 559 | 0, | 559 | 0, |
| 560 | "Make BUFFER stop keeping undo information.") | 560 | "Make BUFFER stop keeping undo information.") |
| 561 | (buf) | 561 | (buffer) |
| 562 | register Lisp_Object buf; | 562 | register Lisp_Object buffer; |
| 563 | { | 563 | { |
| 564 | CHECK_BUFFER (buf, 0); | 564 | Lisp_Object real_buffer; |
| 565 | XBUFFER (buf)->undo_list = Qt; | 565 | |
| 566 | if (NILP (buffer)) | ||
| 567 | XSET (real_buffer, Lisp_Buffer, current_buffer); | ||
| 568 | else | ||
| 569 | { | ||
| 570 | real_buffer = Fget_buffer (buffer); | ||
| 571 | if (NILP (real_buffer)) | ||
| 572 | nsberror (buffer); | ||
| 573 | } | ||
| 574 | |||
| 575 | XBUFFER (real_buffer)->undo_list = Qt; | ||
| 576 | |||
| 566 | return Qnil; | 577 | return Qnil; |
| 567 | } | 578 | } |
| 568 | 579 | ||
| @@ -570,23 +581,22 @@ DEFUN ("buffer-enable-undo", Fbuffer_enable_undo, Sbuffer_enable_undo, | |||
| 570 | 0, 1, "", | 581 | 0, 1, "", |
| 571 | "Start keeping undo information for buffer BUFFER.\n\ | 582 | "Start keeping undo information for buffer BUFFER.\n\ |
| 572 | No argument or nil as argument means do this for the current buffer.") | 583 | No argument or nil as argument means do this for the current buffer.") |
| 573 | (buf) | 584 | (buffer) |
| 574 | register Lisp_Object buf; | 585 | register Lisp_Object buffer; |
| 575 | { | 586 | { |
| 576 | register struct buffer *b; | 587 | Lisp_Object real_buffer; |
| 577 | register Lisp_Object buf1; | ||
| 578 | 588 | ||
| 579 | if (NILP (buf)) | 589 | if (NILP (buffer)) |
| 580 | b = current_buffer; | 590 | XSET (real_buffer, Lisp_Buffer, current_buffer); |
| 581 | else | 591 | else |
| 582 | { | 592 | { |
| 583 | buf1 = Fget_buffer (buf); | 593 | real_buffer = Fget_buffer (buffer); |
| 584 | if (NILP (buf1)) nsberror (buf); | 594 | if (NILP (real_buffer)) |
| 585 | b = XBUFFER (buf1); | 595 | nsberror (buffer); |
| 586 | } | 596 | } |
| 587 | 597 | ||
| 588 | if (EQ (b->undo_list, Qt)) | 598 | if (EQ (XBUFFER (real_buffer)->undo_list, Qt)) |
| 589 | b->undo_list = Qnil; | 599 | XBUFFER (real_buffer)->undo_list = Qnil; |
| 590 | 600 | ||
| 591 | return Qnil; | 601 | return Qnil; |
| 592 | } | 602 | } |
| @@ -1285,10 +1295,7 @@ init_buffer_once () | |||
| 1285 | /* super-magic invisible buffer */ | 1295 | /* super-magic invisible buffer */ |
| 1286 | Vbuffer_alist = Qnil; | 1296 | Vbuffer_alist = Qnil; |
| 1287 | 1297 | ||
| 1288 | tem = Fset_buffer (Fget_buffer_create (build_string ("*scratch*"))); | 1298 | Fset_buffer (Fget_buffer_create (build_string ("*scratch*"))); |
| 1289 | /* Want no undo records for *scratch* | ||
| 1290 | until after Emacs is dumped */ | ||
| 1291 | Fbuffer_disable_undo (tem); | ||
| 1292 | } | 1299 | } |
| 1293 | 1300 | ||
| 1294 | init_buffer () | 1301 | init_buffer () |