| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| | |
|
| |
|
|
|
|
| |
Restores waiting_for_user_input_p to saved value.
(wait_reading_process_output): Unwind protect waiting_for_user_input_p
instead of save/restore old value on stack.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
(deleted_pid_list): New variable to store the pids
of deleted processes. Declare it only if SIGCHLD is defined.
(init_process): Initialize it.
(syms_of_process): Staticpro it.
(Fdelete_process): Add pid of the deleted process to it. Check after
the addition and before the kill if the process is already stopped,
in which case it is deleted from the list and not killed.
(sigchld_handler): Define it only if SIGCHLD is. Search the process
that signaled Emacs in `deleted_pid_list' before `Vprocess_alist'.
Original idea by Stefan Monnier.
|
| |
|
|
|
| |
"incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside
select called from wait_reading_process_output.
|
| |
|
|
|
|
| |
for encoding if eol_type is not yet decided.
(read_process_output): Likewise.
(send_process): Likewise.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`raw_status_high', and `raw_status_low' with plain integers, and move
them to the end of the structure.
* alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
pseudovector's size field so only the Lisp_Object fields get GC'd.
* process.c (update_status, make_process, Fdelete_process)
(Fprocess_status, list_processes_1, start_process_unwind)
(create_process, Fmake_network_process, server_accept_connection)
(wait_reading_process_output, send_process, Fprocess_running_child_p)
(process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
(sigchld_handler, status_notify): Adjust to new non-Lisp fields for
`pid' and `raw_status'.
(Fprocess_id, Fsignal_process): Same, and additionally use floats when
representing PIDs that are larger than most-positive-fixnum.
|
| |
|
|
|
|
| |
Change arg "timeout" to "seconds" and allow both integer and float value.
Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
rather than microseconds. Fix doc string accordingly.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
(ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
(Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
macro. Also try member ifr_addr when getting netmask.
|
| |
|
|
| |
AF_UNSPEC when AF_INET6 is not defined.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(Qipv4, Qipv6): New vars.
(syms_of_process): Intern and staticpro them.
(Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
with or without port number. Handle 4 element vector as IPv4 address
without port number.
(conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
(conv_lisp_to_sockaddr): Handle IPv6 addresses.
(Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
request that address family only. :family nil or omitted means to
determine address family from the specified :host and :service.
(server_accept_connection): Handle IPv6 addresses.
(init_process): Add (:family ipv4) and (:family ipv6) sub-features.
(ifflag_table): Add missing OpenBSD IFF_ flags.
|
| |
|
|
| |
loop over ifflag_table.
|
| |
|
|
| |
without SIG prefix, e.g. SIGHUP and HUP.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
type.
* xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
* unexelf.c (fatal): Fix prototype.
* term.c (fatal): Implement using varargs.
* regex.c (re_char): Move typedef ...
* regex.h (re_char): ... here.
(re_iswctype, re_wctype, re_set_whitespace_regexp): New
prototypes.
* emacs.c (malloc_set_state): Fix return type.
(endif): Fix type.
* lisp.h (fatal): Add argument types.
* dispextern.h (fatal): Delete prototype.
* systime.h: (make_time): Prototype moved from ...
* editfns.c (make_time): ... here.
* editfns.c: Move systime.h include after lisp.h.
* dired.c:
* xsmfns.c:
* process.c: Likewise.
* alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
Add parameter types.
(__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
(emacs_blocked_free): Change definition to match __free_hook.
(emacs_blocked_malloc): Change definition to match __malloc_hook.
(emacs_blocked_realloc): Change definition to match
__realloc_hook.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(find_prev_selectable): Add missing parameter
declarations.
* xfaces.c (lookup_derived_face): Add parameter type.
* xdisp.c (cursor_row_fully_visible_p): Add parameter type.
* marker.c (verify_bytepos): Add parameter type.
* process.c (get_operating_system_release): Move prototype ...
* systime.h (get_operating_system_release): ... here.
* xterm.c (set_vertical_scroll_bar): Move prototype ...
* xterm.h: ... here.
* fns.c (internal_equal, seed_random): Fix prototypes.
(internal_equal): Add missing parameter.
|
| |
|
|
| |
Setup slave tty options before forking.
|
| |
|
|
|
|
|
|
|
|
|
| |
(update_status, status_convert, decode_status, allocate_pty)
(make_process, remove_process, list_processes_1)
(create_process_1, unwind_request_sigio, read_process_output)
(send_process, keyboard_bit_set): Declare static.
(Fdelete_process): Simplify. Pass process to status_notify, so we
don't try to read output from it.
(status_notify): New arg deleting_process--don't try to read
output from that process.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* eval.c (do_autoload):
* macmenu.c (set_frame_menubar):
* process.c (read_process_output, exec_sentinel):
* xmenu.c (set_frame_menubar):
* xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
* w32menu.c (set_frame_menubar):
Use record_unwind_save_match_data.
Rename restore_match_data to restore_search_regs.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
(send_process): Reset SIGPIPE handler before reporting error.
|
| |
|
|
| |
Remove unused declarations.
|
| |
|
|
| |
defined (MAC_OSX)'
|
| |
|
|
|
|
|
|
| |
(DARWIN): Defined.
* process.c (init_process): Default process-connection-type to
nil on darwin 6 or less, t if it is 7 or higher. This way the
broken pty behavior is still allowed on darwin 6 for interactive
processes for people that know what they are doing.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(SIGNAL_THREAD_CHECK): New macro.
* keyboard.c (input_available_signal): Move thread checking code
to macro SIGNAL_THREAD_CHECK and call that macro.
(interrupt_signal): Call SIGNAL_THREAD_CHECK.
* alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
* emacs.c: Define main_thread.
(main): Initialize main_thread.
(handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
(memory_warning_signal): Call SIGNAL_THREAD_CHECK.
* floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
* dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
* sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
* process.c (send_process_trap, sigchld_handler): Call
SIGNAL_THREAD_CHECK.
* data.c (arith_error): Call SIGNAL_THREAD_CHECK.
* atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
|
| | |
|
| |
|
|
|
| |
connects on BSD. If connect is interrupted, just close socket and
start over rather than sleeping and retry with same socket.
|
| |
|
|
|
|
|
|
| |
declare and use them if NON_BLOCKING_CONNECT is defined.
(IF_NON_BLOCKING_CONNECT): New helper macro.
(wait_reading_process_output): Only declare and use local vars
Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
(init_process): Initialize them if NON_BLOCKING_CONNECT defined.
|
| | |
|
| |
|
|
| |
If there's no char for this signal, drop through and use system calls.
|
| |
|
|
|
|
| |
wait_reading_process_input. All uses changed.
(wait_reading_process_output_1): Rename from
wait_reading_process_input_1. All uses changed.
|
| |
|
|
|
|
| |
Add wait_for_cell, wait_proc, and just_wait_proc args
to avoid overloading `read_kbd' and `do_display' args.
Change read_kbd arg to int. All callers changed.
|
| | |
|