(CHARS_MODIFF, BUF_CHARS_MODIFF): New macros.
* buffer.c (Fbuffer_chars_modified_tick): New function returning
value of BUF_CHARS_MODIFF.
(syms_of_buffer): Defsubr it.
(Fget_buffer_create): Initialize BUF_CHARS_MODIFF.
* insdel.c (modify_region): New argument preserve_chars_modiff.
Set CHARS_MODIFF to MODIFF provided preserve_chars_modiff is zero.
(insert_1_both, insert_from_string_1, insert_from_buffer_1)
(adjust_after_replace, adjust_after_replace_noundo)
(replace_range, replace_range_2, del_range_2): Reset CHARS_MODIFF.
* lisp.h (modify_region): Add fourth argument in extern.
* casefiddle.c (casify_region): Call modify_region with fourth
argument zero to assert that CHARS_MODIFF is updated.
* editfns.c (Fsubst_char_in_region, Ftranslate_region_internal)
(Ftranspose_regions): Likewise.
* textprop.c (Fadd_text_properties, Fset_text_properties)
(Fremove_text_properties, Fremove_list_of_text_properties):
Call modify_region with fourth argument 1 to avoid that
CHARS_MODIFF is updated.
(TM_YEAR_BASE): New macro.
(TM_YEAR_IN_ASCTIME_RANGE): Don't define if already defined, so
that s/ files can override this. Use the more-conservative range
1000-9999.
(main): Check for asctime returning NULL.
* lib-src/fakemail.c: Likewise.
* src/editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
../lib-src/b2m.c and ../lib-src/editfns.c.
(Fcurrent_time_string): Use it.
Document that the year might not consume 4 columns if it's outside
the range 1000-9999.
Check for asctime failure.
Don't assume that the output string length is always exactly 24.
(Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
(Fdecode_time): Cast tm_year to EMACS_INT, to avoid overflow when
int is narrower than EMACS_INT.
(Fcurrent_time_string): As with Fformat_time_string, report an
invalid time specification if the argument is invalid. Also,
check for out-of-range time stamps.
Make constrain-to-field notice overlays
2006-02-08 Miles Bader <miles@gnu.org>
* src/editfns.c (Fconstrain_to_field): Use Fget_char_property instead
of Fget_text_property (other field functions word with overlays as
well as text-properties).
(init_editfns): Assign new variable operating-system-release
based on call to uname if available.
(get_operating_system_release): Added function to
allow c-level access to operating system release.
* config.h: Regenerated.
* s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or
less.
(MIN_PTY_KERNEL_VERSION): Defined minimum kernel version for
using ptys as '7'.
* term/mac-win.el (process-connection-type): Removed.
Controlled now by s/darwin.h:PTY_ITERATION.