(Fmake_indirect_buffer): New function.
authorRichard M. Stallman <rms@gnu.org>
Mon, 2 Jan 1995 21:50:28 +0000 (21:50 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 2 Jan 1995 21:50:28 +0000 (21:50 +0000)
commit336cd056699a1270aae0eb1e5709e374a188900b
treebcd5e4022528a74255fa758d9fb9e570ae06b482
parente5d967c90e1f6c9349294faedcee9c40595b809b
(Fmake_indirect_buffer): New function.
(Fbuffer_base_buffer): New function.
(syms_of_buffer): defsubr them.

(reset_buffer): Don't alter intervals here.
(Fget_buffer_create): Use BUF_MARKERS.  Init BUF_INTERVALS here.
(Fkill_buffer): Use BUF_MARKERS; but don't touch it in indir buf.
Likewise BUF_INTERVALS.
(init_buffer_once): Set up .text and BUF_INTERVALS
in buffer_local_symbols and buffer_defaults.

(Fkill_buffer): Don't free the text in indirect buffer.
When killing a base buffer, kill its indirect buffers first.

(set_buffer_temp): New function.

(reset_buffer_local_variables): Initialize buffer_file_type field.

(Fget_buffer_create): Initialize pt_marker, begv/zv_marker.
(set_buffer_internal): Use and update these markers.
Copy undo_list in and out of the base buffer.

(Fget_buffer_create): Init save_modiff field here.
(reset_buffer): Not here.
(Fbuffer_modified_p): Use BUF_SAVE_MODIFF.
(Fset_buffer_modified_p): Use SAVE_MODIFF.
(Fkill_buffer, list_buffers_1): Use BUF_SAVE_MODIFF.

(Fget_buffer_create): Initialize the size and text fields.
src/buffer.c