1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-22 10:26:20 +00:00

(Fmake_indirect_buffer): Throw an error if the intended base buffer

has been killed.  Correct the error message if the base buffer does
not exist.
This commit is contained in:
Luc Teirlinck 2004-04-13 01:16:22 +00:00
parent 912f0c34b2
commit c9aac8e688
2 changed files with 13 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
* buffer.c (Fmake_indirect_buffer): Throw an error if the intended
base buffer has been killed. Correct the error message if the
base buffer does not exist.
2004-04-12 Joe Buehler <jbuehler@hekimian.com>
* s/cygwin.h: Changes for Cygwin unexec() support, changes in

View File

@ -521,7 +521,7 @@ DEFUN ("make-indirect-buffer", Fmake_indirect_buffer, Smake_indirect_buffer,
2, 3,
"bMake indirect buffer (to buffer): \nBName of indirect buffer: ",
doc: /* Create and return an indirect buffer for buffer BASE-BUFFER, named NAME.
BASE-BUFFER should be an existing buffer (or buffer name).
BASE-BUFFER should be a live buffer, or the name of an existing buffer.
NAME should be a string which is not the name of an existing buffer.
Optional argument CLONE non-nil means preserve BASE-BUFFER's state,
such as major and minor modes, in the indirect buffer.
@ -529,7 +529,7 @@ CLONE nil means the indirect buffer's state is reset to default values. */)
(base_buffer, name, clone)
Lisp_Object base_buffer, name, clone;
{
Lisp_Object buf;
Lisp_Object buf, tem;
struct buffer *b;
CHECK_STRING (name);
@ -537,9 +537,12 @@ CLONE nil means the indirect buffer's state is reset to default values. */)
if (!NILP (buf))
error ("Buffer name `%s' is in use", SDATA (name));
tem = base_buffer;
base_buffer = Fget_buffer (base_buffer);
if (NILP (base_buffer))
error ("No such buffer: `%s'", SDATA (name));
error ("No such buffer: `%s'", SDATA (tem));
if (NILP (XBUFFER (base_buffer)->name))
error ("Base buffer has been killed");
if (SCHARS (name) == 0)
error ("Empty string for buffer name is not allowed");
@ -653,7 +656,7 @@ delete_all_overlays (b)
}
/* Reinitialize everything about a buffer except its name and contents
and local variables.
and local variables.
If called on an already-initialized buffer, the list of overlays
should be deleted before calling this function, otherwise we end up
with overlays that claim to belong to the buffer but the buffer