conjunction with stat to make handling of file timestamps
consistent.
(convert_from_time_t): Fix calculation of low-order bits.
(sys_unlink): Allow read-only files to be unlinked as on Unix.
right, as is conventional on MS-Windows.
(w32_wnd_proc): Add code to draw popup menu titles.
Ensure mouse capture is released before running popup menu.
(read_from_string_index): Now counts characters.
(readchar, unreadchar, Fread_from_string): Changed accordingly.
(readchar): Read a multibyte char all at once
from a buffer, marker or string.
(unreadchar): Unread a multibyte char all at once.
(read1): Properly handle non-escaped multibyte chars.
They force a string to be multibyte.
When reading direct from a file, any multibyte sequence means
a multibyte string.
Insist on MAX_LENGTH_OF_MULTI_BYTE_FORM bytes when checking
for read_buffer full; this way need not check specially for multibyte.
(main): Move the --unibyte code below
the most basic initializations.
Clear out *Messages* at that point.
(main): When handling --unibyte, mark all existing
buffers as unibyte; but don't handle it when dumping.
(child_setup) [MSDOS]: Call run_msdos_command here.
(child_setup) [DOS_NT]: Get past drive letter in pwd. Don't call
close_load_descs, since we are not in a vfork.
Use it to bind load_convert_to_unibyte.
(Feval_buffer): New arg UNIBYTE. Pass it to readevalloop.
(readevalloop_1): New unwind-protect subroutine.
(load_convert_to_unibyte): New variable.
(syms_of_lread): Set up Lisp var.
(read1): If load_convert_to_unibyte, convert strings to unibyte.
Fprocess_inherit_coding_system_flag): New functions.
(syms_of_process): Defsubr them.
(Fstart_process, Fopen_network_stream): Initialize inherit_coding_system_flag.
(read_process_output): If the process buffer isn't dead, call
after-insert-file-set-buffer-file-coding-system.
(dumpglyphs): Update from xterm.c.
(w32_ring_bell): Flash window, don't just reset its state.
(dumprectangle, show_mouse_face, x_draw_single_glyph): Use new
args to dumpglyphs.
(my_set_foreground_window): New function.
(w32_condemn_scroll_bars): Mark all as condemned scroll bars.
(w32_redeem_scroll_bar): Look through all scroll bars.
(w32_judge_scroll_bars): Don't clear out condemned list.
(w32_read_socket): Clip window after frame has been restored.
(x_focus_on_frame, x_raise_frame): Use my_set_foreground_window.
(syms_of_w32term): Define Vw32_recognize_altgr.
making size comparison.
(sys_spawnve): Update comments.
(sys_select): Ignore children dead children with pending input.
Delay sending SIGCHLD until all output has been read.
(sys_kill): Sleep to allow focus change events to propagate.
Use TerminateProcess on Win95.
(int_from_hex, enum_locale_fn, Fw32_get_valid_locale_ids):
New functions.
(Vw32_valid_locale_ids): New variable.
(Fw32_set_current_locale): Send message to input thread.
(syms_of_ntproc): defsubr Sw32_get_valid_locale_ids.
(w32_kbd_mods_to_emacs): Obey Vw32_recognize_altgr.
Add more keys for Vw32_capslock_is_shiftlock.
(w32_kbd_patch_key): Obey Vw32_recognize_altgr.
(map_virt_key): Brazilian keyboards use 0xc1 for /(?) key.