summaryrefslogtreecommitdiff
path: root/src/w32proc.c
Commit message (Collapse)AuthorAgeFilesLines
...
* | | ; * src/w32proc.c: Update the commentary to sys_select.Eli Zaretskii2016-03-011-3/+4
| | |
* | | Make piping to subprocesses more robust on MS-WindowsEli Zaretskii2016-01-121-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/w32.c (sys_write): Don't write to a pipe more stuff than its buffer can hold. Don't return -1 if something has been written to the pipe. Zero out 'errno' before calling '_write', to avoid returning a stale value. (Bug#22344) * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable. * src/w32.c (pipe2): Use it to request a user-defined size for the pipe being created. * etc/NEWS: Mention 'w32-pipe-buffer-size'. * doc/emacs/msdos.texi (Windows Processes): Document 'w32-pipe-buffer-size'.
* | | Update copyright year to 2016Paul Eggert2016-01-011-1/+1
| |/ |/| | | | | Run admin/update-copyright.
* | Fix a typo in a macro nameEli Zaretskii2015-10-301-6/+6
| | | | | | | | | | * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro. (w32_compare_strings): Adjust for the correction.
* | Include file cleanup for w32 files in src directoryEli Zaretskii2015-10-221-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h, fontset.h, blockinput.h. * src/w32uniscribe.c: Don't include dispextern.h, character.h, charset.h, fontset.h. * src/w32term.c: Don't include systty.h, systime.h, charset.h, character.h, ccl.h, dispextern.h, disptab.h, intervals.h, process.h, atimer.h, keymap.h, w32heap.h. Include bitmap/gray.xbm in an ifdef-ed away block. Include fcntl.h for CYGWIN. (set_frame_param): Remove unused function. * src/w32select.c: Don't include charset.h and composite.h. (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings due to pointer signedness mismatches. * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings due to pointer signedness mismatches. * src/w32proc.c: Include unistd.h. Don't include systime.h, process.h, dispextern.h. (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name) (Fw32_application_type): Avoid compiler warnings due to pointer signedness mismatches. * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h, character.h, charset.h, dispextern.h. (simple_dialog_show, add_menu_item): Avoid compiler warnings due to pointer signedness mismatches. * src/w32inevt.c: Don't include dispextern.h, window.h, termhooks.h, w32heap.h. * src/w32font.c: Don't include dispextern.h, character.h, charset.h, fontset.h, font.h. (intern_font_name, add_font_entity_to_list) (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont) (list_all_matching_fonts): Avoid compiler warnings due to pointer signedness mismatches. * src/w32fns.c: Don't include character.h, intervals.h, dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h, termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h. (w32_color_map_lookup, add_system_logical_colors_to_map) (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p) (Fxw_color_values, x_display_info_for_name, Fset_message_beep) (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash) (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid compiler warnings, mainly due to pointer signedness mismatches. (unwind_create_frame_1): Remove unused function. * src/w32console.c: Don't include character.h, disptab.h, frame.h, window.h, termhooks.h, dispextern.h. (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer signedness mismatch. * src/w32.c: Include c-strcase.h and systty.h. Don't include w32heap.h.
* | * src/w32proc.c (sys_select): Fix bitwise test.Juanma Barranquero2015-10-121-1/+1
| |
* | Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPSPaul Eggert2015-08-261-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the need for GCPRO1 etc. Suggested by Stefan Monnier in: http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html * doc/lispref/internals.texi (Writing Emacs Primitives): * etc/NEWS: Document the change. * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies) (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live) (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise): * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]: * src/eval.c (gcpro_level) [DEBUG_GCPRO]: * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK) (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS) (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES) (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6) (GCPRO7, UNGCPRO, RETURN_UNGCPRO): Remove. All uses removed. The code now assumes GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS. * src/bytecode.c (relocate_byte_stack): Rename from unmark_byte_stack, since it now only relocates. All callers changed. * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2 with GCPROs removed. * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1. * test/automated/finalizer-tests.el (finalizer-basic) (finalizer-circular-reference, finalizer-cross-reference) (finalizer-error): * test/automated/generator-tests.el (cps-test-iter-close-finalizer): Remove tests, as they depend on gc-precise.
* | Support exec-directory with non-ASCII characters on WindowsEli Zaretskii2015-08-231-3/+11
| | | | | | | | | | | | * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded in the system's ANSI codepage, when it is used for invoking cmdproxy.
* | Fix invocation of programs via cmdproxy.exeEli Zaretskii2015-08-221-1/+11
| | | | | | | | | | | | | | * src/w32proc.c (sys_spawnve): Use exec-directory, not invocation-directory, for finding cmdproxy.exe. When Emacs is run from the source tree, look for cmdproxy.exe in the same source tree. (Bug#21323)
* | Pacify compilation -Wincompatible-pointer-types warningsAndy Moreton2015-07-281-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation warning. (CompareStringW_Proc): New typedef. (w32_compare_strings): Use it, to pacify compiler warnings under "-Wincompatible-pointer-types". * src/w32fns.c (GetDiskFreeSpaceExW_Proc) (GetDiskFreeSpaceExA_Proc): New typedefs. (Ffile_system_info): Use them, to pacify compiler warnings under "-Wincompatible-pointer-types". Copyright-paperwork-exempt: yes
* | ; * src/w32proc.c (w32_executable_type): Fix a typo in a comment.Eli Zaretskii2015-06-281-1/+1
| |
* | Add a new function w32-application-typeEli Zaretskii2015-06-271-15/+89
| | | | | | | | | | * src/w32proc.c (Fw32_application_type): New function. ; * etc/NEWS: Mention w32-application-type.
* | src/w32proc.c: Fix typos in description of subprocess support.Eli Zaretskii2015-04-061-7/+7
| |
* | Avoid segfaults on MS-Windows when invoking subprocesses (Bug#20264)Koichi Arakawa2015-04-061-10/+11
| | | | | | | | | | src/w32proc.c (w32_executable_type): Look for the DLL name in the correct section. This avoids segfaults with some executables.
* | Merge from origin/emacs-24Paul Eggert2015-03-291-0/+132
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4d2e7e1 Fixes: debbugs:19175 2e0cfcc Fix the preamble text of the DIR file we install (Bug#20213) 22ece83 src/w32proc.c: Describe in a comment w32 subprocess implementation. Conflicts: ChangeLog src/ChangeLog src/xterm.c
| * | src/w32proc.c: Describe in a comment w32 subprocess implementation.Eli Zaretskii2015-03-281-0/+132
| | |
| * | Update copyright year to 2015Paul Eggert2015-01-011-1/+1
| | | | | | | | | | | | Run admin/update-copyright.
* | | Support non-blocking connect on MS-Windows (Bug#20207)Eli Zaretskii2015-03-271-15/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on ideas from Kim F. Storm <storm@cua.dk>, see http://lists.gnu.org/archive/html/emacs-devel/2006-12/msg00873.html. src/w32proc.c (reader_thread): If the FILE_CONNECT flag is set, call '_sys_wait_connect'. If it returns STATUS_CONNECT_FAILED, exit the thread with code 2. (sys_select): Support 'wfds' in addition to 'rfds'. If a descriptor in 'wfds' has its bit set, but the corresponding fd_info member doesn't have its FILE_CONNECT flag set, ignore the descriptor. Otherwise, acknowledge a successful non-blocking connect by resetting the FILE_CONNECT flag and setting cp->status to STATUS_READ_ACKNOWLEDGED. src/w32.h (STATUS_CONNECT_FAILED): New enumeration value. (struct _child_process): New member 'errcode'. (FILE_CONNECT): New flag. (_sys_wait_connect): Add prototype. src/w32.c (pfn_WSAEnumNetworkEvents): New function pointer. (init_winsock): Load WSAEnumNetworkEvents from winsock DLL. (set_errno): Map WSAEWOULDBLOCK and WSAENOTCONN. (sys_connect): Support non-blocking 'connect' calls by setting the FILE_CONNECT flag in the fd_info member and returning EINPROGRESS. (_sys_read_ahead): Add debug message if this function is called for a descriptor that waits for a non-blocking connect to complete. (_sys_wait_connect): New function. (sys_read): Support STATUS_CONNECT_FAILED. Return the error code recorded by _sys_wait_connect when the non-blocking connect failed. Don't call WSAGetLastError before a call to set_errno had a chance to use its value, since WSAGetLastError clears the last error. nt/inc/ms-w32.h (BROKEN_NON_BLOCKING_CONNECT): Don't define.
* | | Fix problems with 32-bit wide-int build exposed by MinGWEli Zaretskii2015-01-131-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | lisp.h (XPNTR): Move definition to after XTYPE, to avoid compilation error in an unoptimized build when !USE_LSB_TAG. src/w32heap.c (DUMPED_HEAP_SIZE): For 32-bit wide-int build, use the same larger value as for the 64-bit build. src/w32term.h (SCROLL_BAR_PACK): Cast the result to UINT_PTR to avoid compiler warnings. src/w32proc.c (Fw32_get_codepage_charset, Fw32_set_keyboard_layout): Avoid compiler warnings about cast from integer to pointer of different size. src/w32menu.c (menubar_selection_callback, w32_menu_show): Cast to UINT_PTR instead of EMACS_INT, to avoid compiler warnings about casting from integer to pointer of different size. (add_menu_item): Pass the help-echo string as a pointer to Lisp_String, not as a Lisp_Object. (w32_menu_display_help): Use make_lisp_ptr to reconstruct a Lisp string object from its C pointer. src/w32fns.c (w32_msg_pump) <WM_EMACS_UNREGISTER_HOT_KEY>: Use make_lisp_ptr instead of XIL, to reconstruct a Lisp_Cons from its C pointer. <WM_EMACS_TOGGLE_LOCK_KEY>: msg.lparam is now a C integer. (Fx_create_frame): Type-cast the result of XFASTINT to avoild compiler warnings about size differences. (Fw32_unregister_hot_key): Pass the tail of w32_grabbed_keys as a pointer to a Lisp_Cons struct, not as a disguised EMACS_INT. (Fw32_toggle_lock_key): Pass the new state of the key as a C integer; use -1 for nil. Doc fix. src/.gdbinit (xgetsym): New subroutine. (xsymname, xsymbol): Use it. (xprintsym): No need to call xgetptr.
* | | MS-Windows followup to previous commitEli Zaretskii2015-01-051-2/+0
| | | | | | | | | | | | | | | | | | | | | src/w32proc.c, src/w32.h, src/w32fns.c, src/w32font.c, src/w32menu.c: src/w32notify.c, src/w32proc.c, src/w32select.c, src/w32term.c: src/w32uniscribe.c: Remove declarations of Q* variables that represent symbols.
* | | Update copyright year to 2015Paul Eggert2015-01-011-1/+1
| | | | | | | | | | | | Run admin/update-copyright.
* | | Merge from origin/emacs-24Paul Eggert2015-01-011-1/+6
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a5f90a3 * .gitattributes: New file. 5a9710f Make sure tool-bar changes are reflected on display. 93796ba * autogen.sh: Port better to non-GNU 'cp'. 9758516 Fix a typo in a comment in the previous commit. aa472a3 Fix the pixel coordinates returned by pos-visible-in-window-p. (Bug#19473) d261229 * automated/tramp-tests.el (tramp--test-smb-or-windows-nt-p): New defun. (tramp-test30-special-characters): Use it. (tramp--test-check-files): Filter nil file names out. 9278f05 Omit trailing white space 1c93fd3 Sync with Tramp 2.2.11. 96ebe18 Sync with Tramp 2.2.11. e792450 Sync with Tramp 2.2.11. 2d17e12 Fix ChangeLog entry. 6444482 Fix auto-revert-tail-mode for remote files b5c9c13 Spelling fixes c5504d1 src/w32proc.c (Fw32_get_codepage_charset): Doc fix. (Bug#19458) Conflicts: ChangeLog doc/misc/ChangeLog lisp/ChangeLog src/ChangeLog test/ChangeLog
| * | src/w32proc.c (Fw32_get_codepage_charset): Doc fix. (Bug#19458)Eli Zaretskii2014-12-281-1/+6
| | |
* | | MS-Windows followup to stpcpy changes.Eli Zaretskii2014-12-261-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32proc.c (sys_spawnve, get_lcid_callback): Use strcpy instead of strcat. src/w32menu.c (add_menu_item): Use stpcpy instead of strcat. src/w32.c (sys_readdir, stat_worker, symlink): Use strcpy instead of strcat. nt/gnulib.mk (stpcpy, string): Sync with the latest change in lib/gnulib.mk.
* | | Fix bug #18745 with invoking Windows batch files with embedded whitespace.Noam Postavsky2014-10-251-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32proc.c (create_child): If calling a quoted batch file, pass NULL for exe. nt/cmdproxy.c (batch_file_p): New function. (spawn): If calling a quoted batch file pass NULL for progname. test/automated/process-tests.el (process-test-quoted-batfile): New test.
* | | Don't modify the process's command name passed to start-process on MS-Windows.Eli Zaretskii2014-10-011-0/+9
| | | | | | | | | | | | | | | | | | src/w32proc.c (sys_spawnve): Avoid modification of the CMDNAME argument passed by the caller, when we mirror all slashes into backslashes.
* | | Default to stack objects on DOS_NT platforms as well.Eli Zaretskii2014-09-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32term.h (ALIGN_STACK) [__GNUC__]: Define to __attribute__((force_align_arg_pointer)) for GCC 4.2 and later. src/lisp.h (USE_STACK_LISP_OBJECTS): Remove the !DOS_NT condition. src/w32proc.c (enum_locale_fn, enum_codepage_fn): Add the ALIGN_STACK attribute. src/w32fns.c (w32_monitor_enum): Add the ALIGN_STACK attribute. src/w32uniscribe.c (add_opentype_font_name_to_list): Add the ALIGN_STACK attribute. src/w32font.c (add_font_name_to_list, add_font_entity_to_list) (add_one_font_entity_to_list): Add the ALIGN_STACK attribute.
* | | * lisp.h (lispstpcpy): Rename from lispstrcpy, and act like stpcpy.Paul Eggert2014-09-231-1/+1
| | | | | | | | | | | | | | | | | | All callers changed. * xterm.c (x_term_init): Use new functionality to avoid two needs to compute a string length.
* | | Use known length of a Lisp string to copy it faster.Dmitry Antipov2014-09-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp.h (lispstrcpy): New function. Add comment. * callproc.c (child_setup): * dbusbind.c (xd_append_arg): * doc.c (get_doc_string): * font.c (Ffont_xlfd_name): * frame.c (xrdb_get_resource): * process.c (Fmake_network_process, network_interface_info): * w32fns.c (Fx_open_connection): * w32proc.c (sys_spawnve): * xfns.c (select_visual): * xfont.c (xfont_list): * xsmfns.c (x_session_initialize): * xterm.c (x_term_init): Use it.
* | | src/w32proc.c (w32_compare_strings): Support "C" and "POSIX" locales.Eli Zaretskii2014-09-011-0/+7
| | |
* | | Improve error checking and error messages in string-collation functions.Eli Zaretskii2014-08-301-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/sysdep.c (str_collate) [__STDC_ISO_10646__]: Improve the wording of the error messages. (str_collate) [WINDOWSNT]: Signal an error if w32_compare_strings sets errno. src/w32proc.c (get_lcid_callback): Accept locale specifications without the country part, as in "enu" vs "enu_USA". (w32_compare_strings): Signal an error if a locale was specified, but couldn't be translated into a valid LCID.
* | | Implement case-insensitive and Unicode-compliant collation on MS-Windows.Eli Zaretskii2014-08-291-6/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/fns.c (Fstring_collate_lessp, Fstring_collate_equalp): Doc fix. src/w32proc.c (w32_compare_strings): Accept additional argument IGNORE_CASE. Set up the flags for CompareStringW to ignore case if requested. If w32-collate-ignore-punctuation is non-nil, add NORM_IGNORESYMBOLS to the flags. (LINGUISTIC_IGNORECASE): Define if not already defined. (syms_of_ntproc) <Vw32_collate_ignore_punctuation>: New variable. src/sysdep.c (str_collate) [WINDOWSNT]: Adapt to the interface change. src/w32.h: Adjust prototype of w32_compare_strings. etc/NEWS: Mention w32-collate-ignore-punctuation. Fixes: debbugs:18051
* | | Revert a change inadvertently committed in last commit.Eli Zaretskii2014-08-291-1/+1
| | |
* | | src/sysdep.c (str_collate) [WINDOWSNT]: Fix a typo in ↵Eli Zaretskii2014-08-291-1/+1
| | | | | | | | | | | | 2014-08-29T17:57:36Z!michael.albinus@gmx.de.
* | | Implement locale-sensitive string collation for MS-Windows. (Bug#18051)Eli Zaretskii2014-08-251-0/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | src/w32proc.c (get_lcid_callback, get_lcid, w32_compare_strings): New functions. src/w32.h (w32_compare_strings): Add prototype. src/w32.c <g_b_init_compare_string_w>: New global flag. (globals_of_w32): Initialize it. src/sysdep.c (str_collate) [WINDOWSNT]: Implementation for MS-Windows. src/fns.c (Fstring_collate_lessp, Fstring_collate_equalp) [WINDOWSNT]: Call str_collate on MS-Windows. etc/NEWS: Mention that string-collate-* functions are supported on MS-Windows as well.
* | | src/*.c: Silence a few warnings about unused vars and functions.Juanma Barranquero2014-03-261-6/+5
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/image.c (x_bitmap_height, x_bitmap_width) [HAVE_X_WINDOWS]: * src/sysdep.c (reset_sigio) [!DOS_NT]: Declare conditionally. * src/keyboard.c (read_decoded_event_from_main_queue): #ifdef out variables on Windows. * src/w32.c (unsetenv): Remove unused var `retval'. (emacs_gnutls_pull): Remove unused vars `fdset' and `timeout'. * src/w32fns.c (Ffile_system_info): Use parenthesis in and/or expression. * src/w32notify.c (watch_worker): Remove unnecesary var sleep_result. (start_watching): Remove unused var `thr'. * src/w32proc.c (sys_spawnve): Comment out unused vars `first', `last'. (find_child_console): Remove unnecesary var `thread_id'. * src/w32term.c (w32_read_socket): Comment out unused vars `row', `columns'. (x_focus_frame): #ifdef 0 unused variable `dpyinfo'.
* | Fix crashes in itimers on Windows 9X.Eli Zaretskii2014-02-131-2/+2
| | | | | | | | | | | | src/w32proc.c (start_timer_thread): Pass a non-NULL pointer as last argument to CreateThread. This avoids segfaults on Windows 9X. Reported by oslsachem <oslsachem@gmail.com>.
* | Update copyright year to 2014 by running admin/update-copyright.Paul Eggert2014-01-011-1/+1
| |
* | Minor fixes for MinGW64 build.Fabrice Popineau2013-12-311-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | configure.ac (canonical, C_SWITCH_SYSTEM): Support a 64-bit MinGW64 build on MS-Windows. nt/inc/ms-w32.h (sys_kill): Fix prototype. src/w32term.c (w32_initialize): Use LCID and LOWORD. src/w32proc.c (create_child): Use pid_t for 5th argument. (IsValidLocale): Don't provide prototype for MinGW64. (Fw32_get_valid_keyboard_layouts, Fw32_get_keyboard_layout) (Fw32_set_keyboard_layout): Use HKL and HIWORD/LOWORD. src/w32heap.c (allocate_heap) [_WIN64]: Use "ull", not "i64", which MinGW64 doesn't support. src/lisp.h (EMACS_INT) [_WIN64]: Define for the MinGW64 build.
* | Add load-prefer-newer option, to load .el if newer than .elcGlenn Morris2013-12-171-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/lread.c (Fload): Pass load_prefer_newer to openp. Don't bother checking mtime if openp already did it. (openp): Add `newer' argument, to check all suffixes and find the newest file. (syms_of_lread) <load_prefer_newer>: New option. * src/callproc.c (call_process): * src/charset.c (load_charset_map_from_file): * src/emacs.c (init_cmdargs): * src/image.c (x_create_bitmap_from_file, x_find_image_file): * src/lisp.h (openp): * lread.c (Flocate_file_internal): * src/process.c (Fformat_network_address): * src/sound.c (Fplay_sound_internal): * src/w32.c (check_windows_init_file): * src/w32proc.c (sys_spawnve): Update for new arg spec of openp. * lisp/Makefile.in (BYTE_COMPILE_FLAGS): Set load-prefer-newer to t. * etc/NEWS: Mention this. Fixes: debbugs:2061
* | Merge from trunk.Eli Zaretskii2013-12-071-4/+30
|\ \
| * | Fix bug #15933 with crashes in file-notify-tests on MS-Windows.Eli Zaretskii2013-11-281-4/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support w32 file notifications in batch mode. src/w32proc.c (sys_select): Don't wait on interrupt_handle if it is invalid (which happens in batch mode). If non-interactive, call handle_file_notifications to store file notification events in the input queue. src/w32notify.c (send_notifications): Handle FRAME_INITIAL frames as well. src/w32inevt.c (handle_file_notifications): Now external, not static. src/w32term.h (handle_file_notifications): Provide prototype. src/emacs.c (main) [HAVE_W32NOTIFY]: When non-interactive, call init_crit, since init_display, which does that otherwise, is not called.
* | | Tested subprogram invocation, fixed decode_env_path.Eli Zaretskii2013-12-071-1/+1
| | |
* | | Converted spawnve, but not tested the result yet.Eli Zaretskii2013-12-061-15/+52
| | |
* | | Converted sys_unlink and sys_rmdir, got rid of pending deletion in w32proc.c.Eli Zaretskii2013-11-161-56/+0
| | |
* | | Adapted dostounix_filename. w32-short/long-filename work with wide APIs.Eli Zaretskii2013-11-021-6/+8
|/ /
* | Attempt to fix time_t related problems with MinGW 4.0 runtime.Eli Zaretskii2013-10-141-0/+1
| | | | | | | | | | | | | | | | nt/inc/mingw_time.h: New file. nt/inc/ms-w32.h: Include mingw_time.h instead of doing its job. src/w32proc.c: Include mingw_time.h. src/w32.c: Include mingw_time.h.
* | * src/emacs.c (usage_message): Possessive apostrophe tweak.Glenn Morris2013-09-111-1/+1
| | | | | | | | Likewise in some comments.
* | A possible fix for bug #14333 with hanging at exit on MS-Windows.Eli Zaretskii2013-08-291-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | src/w32.c (term_winsock): Call release_listen_threads before calling WSACleanup. (_sys_wait_accept): Wait for accept event in a loop with a finite timeout, instead of waiting indefinitely. Will hopefully avoid hanging during exit because WSACleanup deadlocks waiting for the event object to be released. src/w32proc.c (release_listen_threads): New function, signals all the reader threads that listen for connections to stop waiting. src/w32.h (release_listen_threads): Add prototype.
* | Simplify EMACS_TIME-related code.Paul Eggert2013-08-271-1/+1
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This portability layer is no longer needed, since Emacs has been using struct timespec as a portability layer for some time. Merge from gnulib, incorporating: 2013-08-27 timespec: new convenience constants and function * src/atimer.h, src/buffer.h, src/dispextern.h, src/xgselect.h: Include <time.h> rather than "systime.h"; that's all that's needed now. * src/dispnew.c: Include <timespec.h> rather than "systime.h"; that's all that's needed now. * src/systime.h (EMACS_TIME): Remove. All uses changed to struct timespec. (EMACS_TIME_RESOLUTION): Remove. All uses changed to TIMESPEC_RESOLUTION. (LOG10_EMACS_TIME_RESOLUTION): Remove. All uses changed to LOG10_TIMESPEC_RESOLUTION. (EMACS_SECS, emacs_secs_addr): Remove. All uses changed to tv_sec. (EMACS_NSECS): Remove. All uses changed to tv_nsec. (make_emacs_time): Remove. All used changed to make_timespec. (invalid_timespec): Rename from invalid_emacs_time. All uses changed. (current_timespec): Rename from current_emacs_time. All uses changed. (add_emacs_time): Remove. All uses changed to timespec_add. (sub_emacs_time): Remove. All uses change dot timespec_sub. (EMACS_TIME_SIGN): Remove. All uses changed to timespec_sign. (timespec_valid_p): Rename from EMACS_TIME_VALID_P. All uses changed. (EMACS_TIME_FROM_DOUBLE): Remove. All uses changed to dtotimespec. (EMACS_TIME_TO_DOUBLE): Remove. All uses changed to timespectod. (current_timespec): Rename from current_emacs_time. All uses changed. (EMACS_TIME_EQ, EMACS_TIME_LT, EMACS_TIME_LE): Remove. All uses changed to timespec_cmp. * src/xgselect.c: Include <timespec.h>, since our .h files don't.