Chong Yidong [Sat, 4 Nov 2006 03:37:40 +0000 (03:37 +0000)]
* w32proc.c: (sys_wait) Only wait for processes with fd<0.
Others should be handled by sys_select instead. Fixes problems
with (progn (start-process "" nil "ls") (call-process "ls"))
Kim F. Storm [Sat, 4 Nov 2006 00:48:31 +0000 (00:48 +0000)]
2006-11-03 Ken Manheimer <ken.manheimer@gmail.com>
* allout.el (allout-during-yank-processing): Cue for inhibiting
aberrance processing during yanks.
(allout-doublecheck-at-and-shallower): Reduce the limit to reduce
the amount of yanked topics that can be aberrant.
(allout-do-doublecheck): Encapsulate this multiply-used recipe in
a function, and supplement with inihibition of doublechecking
during yanks.
(allout-beginning-of-line, allout-next-heading)
(allout-previous-heading, allout-goto-prefix-doublechecked)
(allout-back-to-current-heading, allout-next-visible-heading)
(allout-next-sibling): Use new allout-do-doublecheck function.
(allout-next-sibling): Ensure we made progress when returning
other than nil.
(allout-rebullet-heading): Preserve text property annotations
indicating the text was hidden, if it was.
(allout-kill-line): Remove any added was-hidden annotations.
(allout-kill-topic): Remove any added was-hidden annotations.
(allout-annotate-hidden): Inhibit adding was-hidden text
properties to the undo list.
(allout-deannotate-hidden): New function to remove was-hidden
annotation.
(allout-hide-by-annotation): Use new allout-deannotate-hidden.
(allout-remove-exposure-annotation): Replaced by
allout-deannotate-hidden.
(allout-yank-processing): Signal that yank processing is happening
with allout-during-yank-processing. Also, wrap
allout-unprotected's closer to the text changes, for easier
debugging. We need to inhibit-field-text-motion explicitly, in
lieu of the encompassing allout-unprotected.
(outlineify-sticky): Adjust criteria for triggering new outline
decorations to presence or absence of any topics, not just a topic
at the beginning of the buffer.
(find-function-noselect, find-function, find-variable-noselect, find-variable,
find-definition-noselect, find-face-definition): Use "non-nil" in docstrings.
Stefan Monnier [Thu, 2 Nov 2006 23:46:14 +0000 (23:46 +0000)]
(server-auth-key): Remove. Replace by a process-property.
(server-start): Don't remove the file of the previous process, but
instead clear out the place for the new file.
(server-start): Set the :auth-key property.
(server-process-filter): Use the :auth-key property.
* emacs-lisp-intro.texi (kill-ring-yank-pointer): Revert addition
of extraneous quotation mark to rotate-yank-pointer.
Reset edition-number to 3.02 and update-date to 2006 November 2.
[WINDOWSNT]: Define HAVE_INET_SOCKETS.
[!WINDOWSNT]: Include <netinet/in.h> if available.
[HAVE_SOCKETS]: Also require HAVE_INET_SOCKETS.
(IOCTL, IOCTL_BOOL_ARG): Remove.
(set_tcp_socket): Don't set the socket in blocking mode. Remove c_arg.
* unexmacosx.c (mach_header, segment_command, vm_region, section)
[_LP64]: New defines.
(VM_REGION_BASIC_INFO_COUNT, VM_REGION_BASIC_INFO, LC_SEGMENT)
(MH_MAGIC) [_LP64]: Redefine.
(delta): Remove variable.
(curr_file_offset, pagesize): New variables.
(ROUNDUP_TO_PAGE_BOUNDARY): New macro.
(data_segment_old_fileoff): Initialize explicitly.
(print_region, unexec_regions_recorder, print_load_command_name)
(copy_segment, copy_data_segment): Use long format in printf.
(MAX_UNEXEC_REGIONS): Increase to 400.
(unexec_regions_recorder): Don't warn too many regions here.
(find_emacs_zone_regions): Warn too many regions here.
(print_load_command_name) [_LP64]: Show correct load command name.
(copy_segment, copy_data_segment): Use variable `curr_file_offset'.
Show starting virtual memory address. Don't show ending file offset.
(copy_symtab, copy_dysymtab, copy_twolevelhints): New argument DELTA.
(dump_it): Use new local variable `linkedit_delta' and pass to them.
Error if trying to handle multiple DATA segments.
(unexec): Initialize variable `pagesize'.
(server-visit-files): Use `when'.
(server-process-filter): When authentication fails, send error message to
client. Wrap `process-send-region' in `ignore-errors' instead of
`condition-case', and remove misleading comment.
* emacs-lisp-intro.texi: Remove version reference for X colors.
Document `='. Remove mention that :eval was new in 21. Updated
instance's edition-number to 3.01.
* emacs-lisp-intro.texi: Revised text for kill-region,
copy-region-as-kill, kill-append, kill-new, forward-sentence,
forward-paragraph, find-file, current-kill, yank, and yank-pop.
Removed INSTALL MANIFEST from the directory since those files are
now irrelevant. Updated Info file in ../info. Changed numbering
so is now Revised Third Edition and this instance's edition-number
is 3.00. Did not update ISBN number.
Fixes to emacsclient.c for GNU/Linux.
[!WINDOWSNT] <top level>: Include <netinet/in.h> and <sys/ioctl.h>.
(INVALID_SOCKET): Define.
(initialize_sockets): Put #endif at the right place.
(set_local_socket): Use progname, not argv[0].
(ada-prj-new): Change maintainer, apply whitespace-cleanup, checkdoc. Minor
improvements to many doc strings and comments.
(ada-prj-display-page): Change buffer name to more accurately reflect function.
Add support for TCP sockets.
(SEND_STRING, SEND_QUOTED, HSOCKET, CLOSE_SOCKET, IOCTL, INITIALIZE): New
macros.
(IOCTL_BOOL_ARG): New typedef.
(server_file): New global variable.
(longopts): New option --server-file.
(decode_options): Process new option --server-file and environment variable
EMACS_SERVER_FILE.
(print_help_and_exit): Document new option.
(fail): If no connection available and no alternate editor, suggest using
options to make them explicit.
(AUTH_KEY_LENGTH, SEND_BUFFER_SIZE): New constants.
(send_buffer, sblen): New variables.
(send_to_emacs): New function to buffer output and send it with send().
(quote_file_name): Use SEND_STRING.
(close_winsock, initialize_sockets): New functions to load and unload Winsock.
(get_server_config, set_tcp_socket): New functions to create and set up TCP
sockets.
(set_local_socket): New function to create and set up Unix socket (code moved
from previous implementation).
(set_socket): New function to chose between TCP and Unix sockets.
(main): Use SEND_STRING and SEND_QUOTED. Most code moved to set_local_socket.
Use set_socket. Get answers from server.el with recv(), not file stream
functions.
Add support for TCP sockets.
(server-use-tcp, server-host, server-auth-dir): New options.
(server-auth-key): New variable.
(server-ensure-safe-dir): Create nonexistent parent dirs. Ignore Unix-style
file modes on Windows.
(server-start): Crete a TCP or Unix socket according to the value of
`server-use-tcp'. For TCP sockets, create the id/auth file in `server-auth-dir'
directory.
(server-process-filter): Delete process if authentication fails (which never
happens for Unix sockets).
* emacs-lisp-intro.texi: Many changes since it turned out that
many `simple' functions were rewritten. Changes to the text
regarding zap-to-char, mark-whole-buffer, append-to-buffer,
copy-to-buffer, beginning-of-buffer, what-line, and possibly
others. (I have not reviewed all yet.) This instance does build
for Info and TeX.