Commit graph

38430 commits

Author SHA1 Message Date
Eli Zaretskii
2fa05dcd5e Remove unused code in coding.c
* src/coding.c (decode_eol): Remove unused code that handled the
case of coding->dst_object being nil.  Replace it with an
assertion.
2016-02-27 13:58:16 +02:00
Aurelien Aptel
10a364d673 * src/syntax.c: Fix result of syntax_multibyte()
The ?: operator has a lower precedence than ||.
Bug introduced by commit 45b683a.
2016-02-26 21:22:23 +01:00
Paul Eggert
e35f99f2dd --enable-gcc-warnings now uses -Wjump-misses-init
When configuring with --enable-gcc-warnings, also enable
-Wjump-misses-init, as it’s confusing to use a goto to skip over
an initialization.  Fix the few places in the code that run afoul
of this warning.
* configure.ac (WERROR_CFLAGS): Add -Wjump-misses-init.
* src/doc.c (Fsubstitute_command_keys):
* src/image.c (svg_load_image):
* src/regex.c (re_match_2_internal):
* src/xdisp.c (redisplay_internal, redisplay_window):
Don’t jump over initialization.
2016-02-26 08:23:26 -08:00
Jussi Lahdenniemi
97d7a0b8db Improve the register-hotkey functionality on MS-Windows
* src/w32fns.c (_WIN32_WINNT): Define to 0x0600, needed for
keyboard hook functionality.
Include w32inevt.h, basetyps.h and unknwn.h.
(VK_ANY, WM_WTSSESSION_CHANGE, WTS_SESSION_LOCK): New macros.
(kbdhook): A new struct definition.
(funhook, setup_w32_kbdhook, remove_w32_kbdhook, hook_w32_key)
(check_w32_winkey_state, reset_w32_kbdhook_state): New functions.
(modifier_set): Call check_w32_winkey_state if a Win key was
pressed and the keyboard hook is active.
(w32_wnd_proc): Don't handle Win key combinations if the keyboard
hook is active.  Only register/unregister the hotkeys if the
keyboard hook is not active.  When WM_CREATE is received, call
setup_w32_kbdhook.  When WM_DESTROY is received, call
reset_w32_kbdhook_state.
(lookup_vk_code): When the keyboard hook is active, map
alphanumeric characters to themselves.
(w32_parse_and_hook_hot_key): Renamed from w32_parse_hot_key.  Map
modified keys to VK_ANY if the keyboard hook is active.  Register
Alt-x and Win-x combinations.
(Fw32_shell_execute): Update doc string to reflect new
functionality.  Bypass the code that posts the
WM_EMACS_REGISTER_HOT_KEY message if the keyboard hook is active.
(Fw32_unregister_hot_key): Bypass the code that posts the
WM_EMACS_UNREGISTER_HOT_KEY message if the keyboard hook is active.
(syms_of_w32fns) <w32-pass-lwindow-to-system>
<w32-pass-rwindow-to-system, w32-phantom-key-code>
<w32-lwindow-modifier, w32-rwindow-modifier>: Update doc strings
to reflect the new functionality.
* src/w32console.c (initialize_w32_display): Install the low-level
keyboard hook.
* src/w32inevt.c (key_event): Handle Win-x combinations only if
the keyboard hook is not active.  If the hook is active, use
check_w32_winkey_state instead.
* src/w32term.h (setup_w32_kbdhook, remove_w32_kbdhook)
(check_w32_winkey_state): Add prototypes.
(w32_kbdhook_active): New macro.

* doc/emacs/msdos.texi (Windows Keyboard): Update to reflect the
new functionality.
2016-02-26 12:51:24 +02:00
Paul Eggert
c1415cc98c Integer overflow cleanups for ports and socklen
* src/process.c (struct sockaddr_and_len, conv_sockaddr_to_lisp)
(get_lisp_to_sockaddr_size, Fset_process_datagram_address)
(connect_network_socket):
Use ptrdiff_t, not int, for signed object sizes.
This addresses only a theoretical problem, as in practice these
object sizes are less than 2**31, but we might as well use the
same style here as elsewhere in Emacs.
(string_integer_p): Remove; all uses removed.
(Fmake_network_process): Check that port number is in range.
When converting an integer-string service, rely on strtol
rather than rechecking the string by hand.
* src/process.h, src/w32.c (conv_sockaddr_to_lisp):
Adjust prototypes to match.
2016-02-25 11:59:13 -08:00
Lars Ingebrigtsen
e7650ba63b Allow using "number strings" as services on non-GNU systems
* src/process.c (string_integer_p): New function.
(Fmake_network_process): Use it to allow connecting to
services specified as "993" even when getaddrbyname isn't
available.
2016-02-25 15:54:03 +10:30
Lars Ingebrigtsen
dcf9eee5f1 Make setting the coding system non-blocking
* src/process.c (Fset_process_filter_multibyte): Defer
completing coding system setup in asynchronous processes.
(Fset_process_coding_system): Ditto.
2016-02-24 17:21:50 +11:00
Fredrik Bergroth
354f9f0fc6 Use memmove instead of memcpy on overlapping regions
* src/editfns.c (Ftranspose_regions): Regions may overlap, so
use memmove instead of memcpy (bug#19213).

Copyright-paperwork-exempt: yes
2016-02-24 11:58:50 +11:00
Paul Eggert
c7b8194c04 Port to --enable-gcc-warnings sans getaddrinfo_a
* src/process.c (Fmake_network_process): Add ATTRIBUTE_UNUSED
to a local unused when getaddrinfo_a is missing.
Resize portbuf to size needed.  Do cheap test first.
Move local to block where it’s needed.
2016-02-23 15:26:23 -08:00
Paul Eggert
82848cf689 Minor cleanups for async DNS etc.
* src/frame.h (FRAME_WINDOW_CONFIGURATION_CHANGED):
Omit unnecessary parens.
* src/gnutls.c (gnutls_try_handshake, emacs_gnutls_deinit)
(gnutls_verify_boot):
Use bool for boolean.
(ATTRIBUTE_FORMAT_PRINTF): Add printf attribute.
* src/process.c (free_dns_request, Fmake_network_process):
Allocate and free async request control block all in one go.
(set_network_socket_coding_system, finish_after_tls_connection)
(connect_network_socket):
Now static.
(conv_numerical_to_lisp): 2nd arg is now int, not unsigned.
(Fmake_network_process): Use list1 for brevity.
(wait_for_socket_fds): 2nd arg is now const ptr.
* src/process.h (struct Lisp_Process.dns_request):
Now struct gaicb *, not struct gaicb **, since there was always
exactly one.  All uses changed.
* src/window.c, src/window.h (run_window_configuration_change_hook):
Now static.
2016-02-23 09:42:28 -08:00
Martin Rudalics
8e7712c7af Fix window-configuration-change-hook' and window-size-change-functions'
(1) Run `window-configuration-change-hook' if and only if at least
one window was deleted or created or shows another buffer since
last redisplay.

(2) Run `window-size-change-functions' if and only if at least
one window changed its size since last redisplay (in a few cases
`window-size-change-functions' will also run when no window
changed its size).

(3) Provide two functions `window-pixel-height-before-size-change'
and `window-pixel-width-before-size-change' that allow to easily
detect which window changed size.

* src/frame.h (struct frame): New boolean member
window_configuration_changed.
(FRAME_WINDOW_SIZES_CHANGED): Remove macro.
(FRAME_WINDOW_CONFIGURATION_CHANGED): New macro.
* src/frame.c (adjust_frame_size): Don't run
`window-configuration-change-hook'.
* src/window.h (struct window): New fields
pixel_width_before_size_change and pixel_height_before_size_change.
(WINDOW_INTERNAL_P): New macro.
* src/window.c (Fwindow_pixel_width_before_size_change)
(Fwindow_pixel_height_before_size_change): New functions.
(Fdelete_other_windows_internal, Fwindow_resize_apply)
(resize_frame_windows, Fsplit_window_internal)
(Fdelete_window_internal, grow_mini_window)
(shrink_mini_window, Fresize_mini_window_internal): Don't call
FRAME_WINDOW_SIZES_CHANGED.
(window_size_changed, window_set_before_size_change_sizes)
(run_window_size_change_functions): New functions.
(make_window): Initialize pixel_width_before_size_change and
pixel_height_before_size_change.
(Fdelete_window_internal): Don't call
run_window_configuration_change_hook.
(struct saved_window): Add pixel_height_before_size_change and
pixel_width_before_size_change.
(Fset_window_configuration): Try to identify window configuration
changes correctly so run_window_configuration_change_hook and
run_window_size_change_functions run only if configuration and size
really changed.
(save_window_save): Set the pixel_height_before_size_change and
pixel_width_before_size_change fields.
(Vwindow_size_change_functions): Move here definiton from xdisp.c.
* src/xdisp.c (prepare_menu_bars, redisplay_internal): Call
run_window_size_change_functions.
(Vwindow_size_change_functions): Move definition to window.c.
* src/xfns.c (x_set_menu_bar_lines): Don't call
run_window_configuration_change_hook.
* doc/lispref/windows.texi (Window Sizes): Document new
functions `window-pixel-height-before-size-change' and
`window-pixel-width-before-size-change'.
(Window Configurations): Mention that this may trigger
execution of `window-size-change-functions' although no window
changed size.
(Window Hooks): Update descriptions of `window-size-change-functions'
and `window-configuration-change-hook'.
2016-02-23 12:08:55 +01:00
John Wiegley
81ef756e6a Merge from origin/emacs-25
a9c48d5 Additional fixes for file notification
6bd9d69 Fix documentation of 'global-disable-point-adjustment'
8c22ac9 ; Spelling fix
2975784 Set file modes of pinentry socket for extra safety
2667b3e Clarify GnuPG version compatibility chapter
5e34c36 Revert "Change the default socket location for pinentry"
e19c1c3 Kill off xref--display-history
5698947 Keep the xref buffer visible until the user quits it explicitly
e34fbde Change the default socket location for pinentry
5f89658 Mention how to enable pinentry feature
db51224 Sync with gnulib
aa5a794 Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
2d8b2fd Restore point when writing semantic table to disk
27d3430 Mention pinentry.el in epa manual
5baa001 Fix Bug#22736
7261355 Grammar fix in doc string
d0f3b18 Naming fix for consistency
74ec92d Prefer customized value for GnuPG executable
ea0b604 Fix memory reservation on MS-Windows
c5f72aa Update NextStep readme and add wish list.
6de26a7 Report also result in `file-notify--test-event-handler'
5d17ae7 Improve file-notify-test08-watched-file-in-watched-dir
1cb1268 Fix todo-mode item date editing bugs
1e996cf Fix "[:upper:]" for non-ASCII characters
896f993 Allow customising the article mode cursor behavior
24c1c1d Use pop-to-buffer-same-window in woman.el
2a75f64 New filenotify test for bug#22736
c9bccf7 Report critical battery errors
d675db9 Make eww message toggling message clearer
5e0bb40 * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
fa8fd65 ; Improve character-folding entries in NEWS
3722a69 Fix bugs in window resizing code
289d5c6 Fix decoding DOS EOL in a unibyte buffer
2abcb06 Correct c-parse-state cache manipulation error.
14aec91 Take advantage of new GnuPG version check function
e80c2a7 Make GnuPG version check robuster
15a9464 Fix x-load-color-file pointer signedness
132dbf0 * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
78ab6f1 Follow convention for greek letter constants.
106b5bb Add Stefan-Boltzmann constant to calc units table.
b96baa8 * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
5f91cf9 Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
2d40f7d Fix soffice UserInstallation-URL for Windows
b1a3ebe Fix display of <pre> elements
57d0e3d ; * lisp/help-fns.el: Remove outdated comment.
7a0628d ; * admin/make-tarball.txt: Mention cleaning.
2016-02-22 11:33:54 -08:00
Eli Zaretskii
6bd9d697fd Fix documentation of 'global-disable-point-adjustment'
* src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
<global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
2016-02-22 19:30:01 +02:00
Lars Ingebrigtsen
87e9e1b61c Fix async TLS boot problem
* src/process.c (wait_reading_process_output): Verify the boot
of the correct process.
2016-02-22 15:29:15 +11:00
Lars Ingebrigtsen
f50074922e Clean up debugging code
* src/process.c (Fmake_network_process): Remove debugging printf.
(wait_for_socket_fds, wait_while_connecting)
(wait_for_tls_negotiation): Remove newlines from messages.
2016-02-22 15:18:41 +11:00
Lars Ingebrigtsen
f577f59a52 Fix merge conflicts in network-stream-tests.el 2016-02-22 15:06:33 +11:00
Lars Ingebrigtsen
0d3c0f6f90 add_to_log expects Lisp parameters 2016-02-22 13:34:54 +11:00
Lars Ingebrigtsen
b55bf9f45a Mention in the doc strings that process functions may block
(Fprocess_contact, Fprocess_datagram_address)
(Fset_process_datagram_address, Fset_network_process_option)
(Fprocess_send_region, Fprocess_send_string): Mention that the
functions may block.
(Fset_process_coding_system): Ditto.
2016-02-22 13:14:35 +11:00
Lars Ingebrigtsen
fc4457d714 Add blocker warnings to the *Messages* buffer
* src/process.c (wait_for_socket_fds): Add warning to the log.
(wait_while_connecting): Ditto.
(wait_for_tls_negotiation): Ditto.
2016-02-22 13:07:27 +11:00
Paul Eggert
1f7feecaee Use Gnulib filevercmp for version comparison
* admin/merge-gnulib (GNULIB_MODULES): Add filevercmp.
* doc/lispref/strings.texi (Text Comparison):
* etc/NEWS, src/fns.c:
* test/src/fns-tests.el (fns-tests-string-version-lessp):
Rename newly-introduced function to string-version-lessp, by
analogy with strverscmp.
* lib/filevercmp.c, lib/filevercmp.h: New files, copied from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* src/fns.c: Include <filevercmp.h>.
(gather_number_from_string): Remove.
(Fstring_version_lessp): Reimplement via filevercmp.
2016-02-21 13:27:40 -08:00
Lars Ingebrigtsen
336dac5820 Avoid integer overflows in string-numeric-lessp
* src/fns.c (Fstring_numeric_lessp): If we have an integer
overflow, compare lexicographically.
2016-02-21 16:28:37 +11:00
Lars Ingebrigtsen
71783e90a4 Add the string-numeric-lessp function
* doc/lispref/strings.texi (Text Comparison): Document
`string-numerical-lessp'.

* src/fns.c (Fstring_numeric_lessp): New function.
(gather_number_from_string): Helper function for that function.

* test/src/fns-tests.el (fns-tests-string-numeric-lessp): Add tests.
2016-02-21 15:32:45 +11:00
Alain Schneble
7993679210 Respect DNS timeouts
* src/process.c (check_for_dns): If the async DNS request
failed and the associated process is still in "connect" state,
deactivate the process and set status to "failed".
2016-02-21 13:36:25 +11:00
Eli Zaretskii
ea0b604412 Fix memory reservation on MS-Windows
* src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
units.  This avoids leaving gaps in reserved memory regions that
no one can use, since memory reservation must produce 64KB-aligned
addresses.  (Bug#22526)
2016-02-20 18:59:14 +02:00
Eli Zaretskii
1e996cfbd0 Fix "[:upper:]" for non-ASCII characters
* src/regex.c (re_match_2_internal): Support [:upper:] and
[:lower:] for non-ASCII characters.  (Bug#18150)
2016-02-20 13:03:20 +02:00
Lars Ingebrigtsen
ad1951dbfb Get explicit width/height + scale computations right
* src/image.c (compute_image_size): :scale should also be
taken into account when :width and :height are explicitly names.
2016-02-20 18:03:37 +11:00
Lars Ingebrigtsen
b73e5254ea Fix coding system setup
* src/process.c (set_network_socket_coding_system): Pass in
the host/service that's been computed already.
2016-02-19 11:58:50 +11:00
Lars Ingebrigtsen
e96df838af Verify the TLS connection asynchronously
* src/gnutls.c (gnutls_verify_boot): Refactor out into its own
function so that we can call it asynchronously.
(Fgnutls_boot): Use it.

* src/process.c (wait_reading_process_output): Verify the TLS
negotiation.
2016-02-18 16:25:37 +11:00
Eli Zaretskii
289d5c6e97 Fix decoding DOS EOL in a unibyte buffer
* src/coding.c (decode_eol): Loop over bytes, not characters.
(Bug#5251)
2016-02-17 17:48:30 +02:00
Paul Eggert
15a946479c Fix x-load-color-file pointer signedness
* src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
For sscanf and int *, use %d, not %u.
Problem found on Ubuntu 15.10 x32, which lacks X support.
2016-02-16 23:25:59 -08:00
Lars Ingebrigtsen
d4bb0b923b Deactivate the correct process
* src/process.c (wait_reading_process_output): Deactivate the
correct process on failure.
2016-02-16 16:47:55 +11:00
Lars Ingebrigtsen
ac6e085cf6 Implement asynch TLS negotiation
* src/gnutls.c (gnutls_try_handshake): Factor out into its own
function.
(emacs_gnutls_handshake): Use it.
(emacs_gnutls_read): Just return instead of retrying the handshake.

* src/process.c (finish_after_tls_connection): Factor out
into its own function.
(connect_network_socket): Use it.
(wait_reading_process_output): Retry TLS handshakes.
(wait_reading_process_output): Defer sentinel until TLS completes.
2016-02-16 15:56:56 +11:00
Lars Ingebrigtsen
c43bb7f136 Simplify the DNS resolution loop a bit
* src/process.c (wait_reading_process_output): Simplify the
DNS resolution loop a bit.
2016-02-16 13:58:26 +11:00
Alain Schneble
d1fc5a548e Loop over the process list instead of maintaining a separate list
* src/process.c: Remove declaration/definition of dns_processes list.
* src/process.c (wait_reading_process_output): Loop over all processes in
Vprocess_alist instead of dns_processes, to check for completed DNS
requests.
2016-02-16 13:50:23 +11:00
Lars Ingebrigtsen
9755b75300 Allow setting the filter masks later
* src/process.c (Fset_process_filter): Don't set the socket
masks here, because we may not have a socket yet.
(set_process_filter_masks): New function.
(connect_network_socket): Set the filter masks here.
2016-02-16 13:37:33 +11:00
Lars Ingebrigtsen
df91173405 Ensure we always free DNS resources when deleting a process
* src/process.c (free_dns_request): Factor out into own function.
(Fdelete_process): When deleting a process, free any DNS
structures associated with it.
(check_for_dns): Always free all DNS resources.
2016-02-16 13:23:15 +11:00
Alain Schneble
e4324bdf56 Don't block in set-process-window-size
* src/process.c (set-process-window-size): Explicitly return Qnil when
called with network processes as set_window_size won't work anyway on
socket fds.  As a welcome side effect, this makes the blocking
wait_for_socket_fds call obsolete.
2016-02-16 13:13:06 +11:00
Lars Ingebrigtsen
7f3441cc33 Do most of the coding system setup earlier
* src/process.c (Fmake_network_process): Set the read/write
coding systems here, so that special bindings work.
(Fmake_network_process): Complete the coding system setup here.
2016-02-16 13:01:05 +11:00
John Wiegley
220613e089 Merge from origin/emacs-25
d4b93e1 Minor fixes in global-auto-composition-mode
02b037b Allow arithmetic operators inside C++ template constructs.
44b16f6 Avoid crashes in semi-malformed 'condition-case'
652e5b4 Allow arithmetic operators inside C++ template constructs.
d9ea795 Fix regression with 'recent-keys' and keyboard macros
903603f Fix wording in a doc-view.el comment
cf79616 ; Spelling fixes
f8bf1b3 CONTRIBUTE cleanups and updates
f3aaca3 Port USE_STACK_LISP_OBJECTS fix to Clang
1834ac7 Port to x86 GCC 4.3.1 and earlier
8482949 Fix point movement under 'scroll-conservatively'
c1313b5 Replace colon in file name (not legal on Windows)
f7af26c Fix a typo in edt.texi
8badf95 Make 'mmap_realloc' on MS-Windows more reliable
856cd94 Grep alias `all' shall not match parent directory
2016-02-15 14:11:03 -08:00
John Wiegley
c79978fcad Merge from origin/emacs-25
dacde7e * etc/AUTHORS: Update the AUTHORS file
478ca5d ; fix changelog entries
2b7d006 ; make change-history-commit
851decb * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
47896c8 ; Improve commentary in insdel.c
53ca1e1 Index tilde characters in names of backup files
d97f522 Document deprecation of hi-lock-mode's 'C-x w' bindings
b55f06d ; * etc/NEWS: Use double spaces to end a sentence.
28bb214 Announce that the `C-x w' bindings are deprecated
1c98f98 Suppress GNUstep hardening
d82f24b Fix redisplay after a large insertion
85a2753 Revert "Fix gnus-group-get-new-news-this-group on group with
        closed server"
e8e3db0 ; Improve merge documentation in CONTRIBUTE
5be9989 * lib-src/make-docfile.c: Include stdarg.h.
c95ebbf Extend gpm-mouse-mode's doc string and doc to point out
        limitations.
2016-02-15 14:10:25 -08:00
John Wiegley
a644fa3675 Merge from origin/emacs-25
f5d6b9b Revert "Support integer image rotation and respect EXIF rotations"
afe7d1f Revert "Document EXIF image rotation"
c6f377c Document OS X LANG default
eb4a18c Set locale when run from OS X GUI
456c0a3 make-docfile cleanup for I/O, etc.
25ec995 Memory-management cleanup in make-docfile
02d925e Kevin Gallagher has new email address
4ef153b Improve doc strings of 'forward/backward-word-strictly'
3ad05a0 Describe Makefile test targets in test/README
2016-02-15 14:09:12 -08:00
John Wiegley
33bb679af9 Merge from origin/emacs-25
10b8ed2 Document EXIF image rotation
0f60049 Support integer image rotation and respect EXIF rotations
7dd45b6 Quote table names for postgres listings (sql-mode)
6bac035 * lisp/replace.el (replace-match-maybe-edit): Make arg
        `backward' optional.
ee909aa * lisp/simple.el (next-line-or-history-element): Reset
        temporary-goal-column.
0a289d3 Suppress ACL ops if configured with --disable-acl
1a9dbf5 Mention web bugs
fa55da2 Make mm-html-blocked-images default to "" again
2016-02-15 14:07:46 -08:00
Eli Zaretskii
44b16f60fd Avoid crashes in semi-malformed 'condition-case'
* src/eval.c (internal_lisp_condition_case): Treat a handler
'(nil)' as if it were '(nil nil)'.  (Bug#22675)
2016-02-15 16:03:54 +02:00
Eli Zaretskii
d9ea795035 Fix regression with 'recent-keys' and keyboard macros
* src/keyboard.c (record_char): Don't record in 'recent_keys'
events that come from executing keyboard macros.  (Bug#22674)
2016-02-15 14:03:57 +02:00
Lars Ingebrigtsen
2d7af7e206 Protect against initial handshake failures
* src/process.c (connect_network_socket): Mark the connection
as failed if the handshake didn't succeed yet.  This should be
reworked later.
2016-02-15 20:10:10 +11:00
Lars Ingebrigtsen
9c74f2fea6 Call the network security manager after doing TLS negotiation
* lisp/net/network-stream.el (network-stream-open-tls):
Postpone NSM verification when running async.

* src/process.c (Fset_process_filter): This function doesn't
need to wait.
(connect_network_socket): Set the process status to "run" only
after TLS negotiation.
(wait_for_socket_fds): Take a name parameter for more debugging.
(wait_reading_process_output): Don't change status to "run"
unless TLS negotiation has finished.
(send_process): Wait for the process here instead of
send_process_string.
(connect_network_socket): Call the network security manager.
2016-02-15 18:24:08 +11:00
Lars Ingebrigtsen
40155283c3 Remove some #ifdefs and update documentation
* doc/lispref/processes.texi (Network Processes): Remove
mention of `dns'.

* lisp/net/network-stream.el (open-network-stream): Remove
mention of `dns'.

* src/process.c (Fset_process_filter)
(Fset_process_window_size, Fprocess_contact)
(Fprocess_datagram_address, Fset_process_datagram_address)
(Fset_network_process_option, Fprocess_send_region)
(Fprocess_send_string, Fset_process_coding_system)
(Fset_process_filter_multibyte): Remove the #ifdef
HAVE_GETADDRINFO_A checks.
(Fprocess_send_string): Wait for TLS negotiation.
(wait_for_tls_negotiation): New function.
(send_process): Remove the TLS boot check.

* src/process.c (Fmake_network_process): Ditto.
2016-02-15 16:05:14 +11:00
Alain Schneble
c740d190e8 Add blockers to process functions
* src/process.c (set-process-filter, set-process-window-size,
process-contact, process-datagram-address, set-process-datagram-address,
set-network-process-option): Make functions wait (block) on network
process until pending DNS requests have been processed and associated
socket initialized.

* src/process.c (process-send-region, process-send-string,
process-send-eof): Make functions wait (block) while network process is
in connect state.
2016-02-15 15:44:29 +11:00
Paul Eggert
cf79616133 ; Spelling fixes 2016-02-14 19:45:12 -08:00
Paul Eggert
f3aaca3552 Port USE_STACK_LISP_OBJECTS fix to Clang
* src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
Recent versions of Clang claim to be GCC 4.2.1 but do not have
the GCC bug.
2016-02-14 11:43:04 -08:00