Function: bury-buffer-internal
bury-buffer-internal is a function defined in buffer.c.
Signature
(bury-buffer-internal BUFFER)
Documentation
Move BUFFER to the end of the buffer list.
Source Code
// Defined in /usr/src/emacs/src/buffer.c
{
Lisp_Object aelt, aelt_cons, tem;
register struct frame *f = XFRAME (selected_frame);
CHECK_BUFFER (buffer);
/* Update Vbuffer_alist (we know that it has an entry for BUFFER).
Don't allow quitting since this might leave the buffer list in an
inconsistent state. */
tem = Vinhibit_quit;
Vinhibit_quit = Qt;
aelt = Frassq (buffer, Vbuffer_alist);
aelt_cons = Fmemq (aelt, Vbuffer_alist);
Vbuffer_alist = Fdelq (aelt, Vbuffer_alist);
XSETCDR (aelt_cons, Qnil);
Vbuffer_alist = nconc2 (Vbuffer_alist, aelt_cons);
Vinhibit_quit = tem;
/* Update buffer lists of selected frame. */
fset_buffer_list (f, Fdelq (buffer, f->buffer_list));
fset_buried_buffer_list
(f, Fcons (buffer, Fdelq (buffer, f->buried_buffer_list)));
run_buffer_list_update_hook (XBUFFER (buffer));
return Qnil;
}