aboutsummaryrefslogtreecommitdiffstats
path: root/src/w32proc.c
Commit message (Collapse)AuthorAgeFilesLines
* New directoryKenichi Handa2003-09-081-3/+0
|
* Add arch taglinesMiles Bader2003-09-011-0/+3
|
* Trailing whitespace deleted.Juanma Barranquero2003-02-041-61/+61
|
* Add missing semicolon.Juanma Barranquero2002-07-301-1/+1
|
* (syms_of_ntproc): Fix docstring of `w32-get-true-file-attributes'.Juanma Barranquero2002-07-301-4/+3
|
* Most uses of XSTRING combined with STRING_BYTES or indirection changed toKen Raeburn2002-07-151-4/+4
| | | | | SCHARS, SBYTES, STRING_INTERVALS, SREF, SDATA; explicit size_byte references left unchanged for now.
* include sys/file.h.Jason Rumney2002-05-031-0/+1
|
* (sys_spawnve): Update call to openp.Stefan Monnier2002-04-301-1/+1
|
* (syms_of_w32proc): Get true file attributes by default.Jason Rumney2002-04-281-1/+1
|
* (syms_of_ntproc): Doc fix.Juanma Barranquero2002-02-261-1/+1
|
* Include <config.h>.Pavel Janík2002-01-011-1/+5
|
* Change doc-string comments to `new style'. [w/`doc:' keyword]. Doc fixes.Jason Rumney2001-11-121-125/+137
|
* (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR andAndrew Innes2001-11-051-2/+2
| | | | CHECK_NUMBER_CDR.
* Update usage of CHECK_ macros (remove unused second argument).Pavel Janík2001-11-021-12/+12
|
* Update calls to openp.Stefan Monnier2001-10-121-1/+1
|
* (create_child): Add new parameter is_gui_app.Andrew Innes2001-06-111-12/+23
| | | | | | | | | (w32_executable_type): Add new parameter is_gui_app. (sys_spawnve): Use it. (sys_kill): Fake ^C for SIGINT, and ^Break (if possible) for SIGQUIT. This matches better how the signals are interpreted by MSVC compiled programs. (syms_of_ntproc): Update docstring.
* Include syssignal.h, to avoid compiler warnings.Eli Zaretskii2001-05-121-0/+1
|
* (sys_spawnve): Quote more chars for Cygwin.Gerd Moellmann2001-04-101-4/+14
|
* (syms_of_ntproc): Doc fix for w32-downcase-file-names.Jason Rumney2000-11-211-1/+4
|
* (compare_env): Convert to uppercase for comparison,Andrew Innes2000-09-031-2/+4
| | | | not lowercase, to match how the native Windows shell works.
* (IsValidLocale): Extern missing from mingw32 headers.Andrew Innes2000-08-221-4/+13
| | | | | | | (compare_env): (find_child_console): Fix compile warning. (create_child): Remove reference to security descriptor, which isn't needed and doesn't compile with mingw32.
* * callproc.c (strerror): Remove decl.Paul Eggert1999-11-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fileio.c (strerror): Likewise. * process.c (strerror): Likewise. * emacs.c (strerror): Likewise. (Vsystem_messages_locale): Renamed from Vmessages_locale. All uses changed. (Vprevious_system_messages_locale): Likewise, from Vprevious_messages_locale. (Vsystem_time_locale): Likewise, from Vtime_locale. (Vprevious_system_time_locale): Likewise, from Vprevious_time_locale. (ABORT_RETURN_TYPE): New macro. (abort): Return type is now ABORT_RETURN_TYPE. (main): Always invoke init_signals, even if POSIX_SIGNALS is not defined. (syms_of_emacs): messages-locale -> system-messages-locale, previous-messages-locale -> previous-system-messages-locale, time-locale -> system-time-locale, previous-time-locale -> previous-system-time-locale. * gmalloc.c (PP, __ptr_t): Assume ANSI C if STDC_HEADERS is defined. (const): Do not define; that's config.h's job. (<limits.h>): Include if HAVE_LIMITS_H is defined. (CHAR_BIT): Move test for definedness outside of limits.h condition. (<stddef.h>): Include if STDC_HEADERS is defined. (FREE_RETURN_TYPE): New macro. (free): Return type is now FREE_RETURN_TYPE. * lisp.h (synchronize_system_time_locale): Renamed from synchronize_time_locale. All uses changed. (synchronize_system_messages_locale): Likewise, from synchronize_messages_locale. * process.c (sys_siglist): Remove. * syntax.c (scan_sexps_forward): Use abort, not assert. * sysdep.c (my_sys_siglist): New var. (sys_siglist): New macro. Remove old initialized vars of same name. (init_signals): Initialize sys_siglist. * xfns.c (abort): Remove decl; stdlib.h now does this.
* Add support for large files, 64-bit Solaris, system locale codings.Paul Eggert1999-10-191-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (emacs): Set the LC_ALL environment variable to "C" when dumping, so that the dumped Emacs doesn't have stray locale info. (dired.o): Depend on systime.h. (editfns.o): Depend on coding.h. * alloc.c, buffer.c, callproc.c, ccl.c, charset.c, coding.c, data.c, dispnew.c, editfns.c, emacs.c, filelock.c, floatfns.c, hftctl.c, keyboard.c, process.c, sysdep.c, unexelf.c, unexhp9k800.c, unexsunos4.c, vmsfns.c, vmsgmalloc.c, w32faces.c, w32menu.c, w32term.c, w32xfns.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Include <config.h> before any system include files. * alloc.c, buffer.c, ccl.c, data.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, frame.c, insdel.c, keymap.c, lread.c, m/alpha.h, print.c, search.c, sysdep.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Do not include <stdlib.h>, as <config.h> does this now. * callproc.c (Fcall_process): Synchronize messages locale before invoking strerror. Decode resulting string with locale-coding-system. * coding.c (Vlocale_coding_system): New var. (syms_of_coding): Adjust to above change. (emacs_strerror): New function. * coding.h (emacs_strerror, Vlocale_coding_system): New decls. * config.in (HAVE_STDIO_EXT_H, HAVE_TM_GMTOFF, HAVE___FPENDING, HAVE_FTELLO, HAVE_GETLOADAVG, HAVE_MBLEN, HAVE_MBRLEN, HAVE_STRSIGNAL): New macros. (BITS_PER_LONG): Default to 64 if _LP64 is defined. <stdlib.h>: Include if HAVE_STDLIB_H is defined and NOT_C_CODE isn't. * dired.c: Include "systime.h". (Ffile_attributes): Do not cast s.st_size to int; this loses information if int is 32 bits but st_size and EMACS_INT are larger. Treat large device numbers like large inode numbers. * dispnew.c (PENDING_OUTPUT_COUNT): Use __fpending if available. * editfns.c: Include coding.h. (emacs_strftime): Remove decl. (emacs_strftimeu): New decl. (emacs_memftimeu): Renamed from emacs_memftime; new arg UT. Use emacs_strftimeu instead of emacs_strftime. (Fformat_time_string): Convert format string using Vlocale_coding_system, and convert result back. Synchronize time locale before invoking lower level function. Invoke emacs_memftimeu, passing ut, instead of emacs_memftime. * emacs.c: Include <locale.h> if HAVE_SETLOCALE is defined. (Vmessages_locale, Vprevious_messages_locale, Vtime_locale, Vprevious_time_locale): New variables. (main): Invoke setlocale early, so that initial error messages are localized properly. But skip locale-setting if LC_ALL is "C". Fix up locale when it's safe to do so. (fixup_locale): Moved here from xterm.c. (synchronize_locale, synchronize_time_locale, synchronize_messages_locale): New functions. (syms_of_emacs): Accommodate above changes. * fileio.c (report_file_error): Convert strerror output according to Vlocale_coding_system. (Finsert_file_contents): Check for arithmetic overflow in computations that depend on file size. Report IO errors with emacs_strerror, not strerror. * fns.c (Fgethash): Declare dflt parameter. * gmalloc.c: Do not define const to nothing if HAVE_CONFIG_H is defined; that's config.h's job. * lisp.h (EMACS_INT, BITS_PER_EMACS_INT, EMACS_UINT): If _LP64, default these values to long, BITS_PER_LONG, and unsigned long. (VALBITS, MARKBIT, XINT): Do not assume 32-bit EMACS_INT. (PNTR_COMPARISON_TYPE): Default to EMACS_UINT, not to unsigned int. (code_convert_string_norecord, fixup_locale, synchronize_messages_locale, synchronize_time_locale, emacs_open, emacs_close, emacs_read, emacs_write): New decls. All Emacs callers of open, close, read, write changed to use emacs_open, emacs_close, emacs_read, emacs_write. * lread.c (file_offset, file_tell): New macros. All uses of ftell changed to file_tell. (saved_doc_string_position, prev_saved_doc_string_position): Now of type file_offset. (init_lread): Do not fix locale here; fixup_locale now does this. * m/amdahl.h, s/usg5-4.h: (NSIG): Remove. (NSIG_MINIMUM): New macro. * m/cydra5.h, m/dpx2.h, m/mips.h, m/pfa50.h, m/sps7.h, m/stride.h, m/ustation.h, s/gnu-linux.h, s/hpux.h, s/iris3-5.h, s/iris3-6.h, s/umips.h, s/usg5-4.h: (SIGIO): Do not undef. (BROKEN_SIGIO): New macro. * m/ustation.h: (SIGTSTP): Do not undef. (BROKEN_SIGTSTP): New macro. * s/gnu-linux.h: (SIGPOLL, SIGURG): Do not undef. (BROKEN_SIGPOLL, BROKEN_SIGURG): New macros. * s/ptx4.h: (SIGINFO): Do not undef. (BROKEN_SIGINFO): New macros. * m/delta.h, s/ptx.h, s/template.h: Doc fix. * mktime.c, strftime.c: Update to glibc 2.1.2 version, with some Emacs-related changes merged. * print.c (float_to_string): Prepend "-" to representation of a NaN if the NaN is negative. * process.c (sys_siglist): Omit if HAVE_STRSIGNAL. (wait_reading_process_input): Use emacs_strerror, not strerror. * process.c (status_message, sigchld_handler): Synchronize locale, then use strsignal istead of sys_siglist. * w32proc.c (sys_wait): Likewise. * s/aix3-1.h, s/bsd4-1.h, s/dgux.h, s/gnu-linux.h, s/hiuxmpp.h, s/hpux.h, s/iris3-5.h, s/iris3-6.h, s/irix3-3.h, s/osf1.h, s/rtu.h, s/sunos4-1.h, s/unipl5-0.h, s/unipl5-2.h, s/usg5-0.h, s/usg5-2-2.h, s/usg5-2.h, s/usg5-3.h, s/xenix.h: (open, close, read, write, INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, INTERRUPTIBLE_IO): Remove. * s/sol2-5.h (_LARGEFILE_SOURCE, _FILE_OFFSET_BITS): New macros. * sysdep.c (sys_read, sys_write, read, write, sys_close, close, sys_open, open): Remove. (emacs_open, emacs_close, emacs_read, emacs_write): Always define; the old INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, and INTERRUPTIBLE_IO macros are no longer used. (emacs_open): Renamed from sys_open. Merge BSD4_1 version. (emacs_close): Renamed from sys_close. (emacs_read): Renamed from sys_read. (emacs_write): Renamed from sys_write. (sys_siglist): Do not declare if HAVE_STRSIGNAL. (dup2): Do not print error on failure; the real dup2 doesn't. (strsignal): New function, defined if !HAVE_STRSIGNAL. * syssignal.h (SIGINFO): Undef if defined and if BROKEN_SIGINFO is defined. (SIGIO, SIGPOLL, SIGTSTP, SIGURG): Likewise. (NSIG): If less than NSIG_MINIMUM, define to NSIG_MINIMUM. (strsignal): Declare if !HAVE_STRSIGNAL. * unexelf.c (ElfBitsW, ELFSIZE, ElfExpandBitsW): New macros. (ElfW): Define in terms of ElfExpandBitsW. * w32proc.c (sys_siglist): Remove decl. * xdisp.c (decode_mode_spec): 3rd arg is int, not char, to comply with ANSI C. (display_string): Declare face_string_pos arg. * xfns.c (Fx_show_tip): Declare timeout param. * xterm.c: No need to include locale.h. (x_alloc_lighter_color, x_setup_relief_color): Pass arg as double, not float, for compatibility with ANSI C. (fixup_locale): Move to emacs.c. (x_term_init): Do not setlocale or fixup locale; the main program does this now.
* Use XCAR and XCDR instead of explicit member references.Ken Raeburn1999-09-121-4/+4
|
* (sys_select): Call MsgWaitForMultipleObjects insteadAndrew Innes1999-07-011-3/+28
| | | | | | | | of WaitForMultipleObjects when user input is allowed, so we can handle incoming window messages. Call drain_message_queue when there are messages waiting; this ensures that windows created indirectly from the lisp thread get processed properly, and don't hang other applications by failing to respond to broadcasts.
* (sys_kill): Attach to current foreground threadAndrew Innes1999-05-021-18/+51
| | | | when grabbing focus; necessary on NT 5.0.
* (w32_executable_type): Relax the check to identifyAndrew Innes1999-01-171-1/+4
| | | | | cygwin-compiled applications, because the exact dll name varies with release. Now only require the name to start "cygwin".
* (Vw32_start_process_inherit_error_mode): New variable.Andrew Innes1998-12-281-8/+22
| | | | | | (create_child): Use it. (syms_of_ntproc): Defvar it. Also fix docstrings for w32-start-process-share-console and w32-start-process-show-window.
* (sys_kill): Set extended key flag when fakingGeoff Voelker1998-11-101-6/+202
| | | | | | | | | | | | | | | | | | | Ctrl-Break keystrokes. (Fw32_get_locale_info): Allow LONGFORM parameter to specify an arbitrary locale property using a numerical index. (Vw32_valid_codepages): New variable. (enum_codepage_fn): (Fw32_get_valid_codepages): (Fw32_get_console_codepage): (Fw32_set_console_codepage): (Fw32_get_console_output_codepage): (Fw32_set_console_output_codepage): (Fw32_get_codepage_charset): (Fw32_get_valid_keyboard_layouts): (Fw32_get_keyboard_layout): (Fw32_set_keyboard_layout): New functions, exposing Windows locale handling functions. (syms_of_ntproc): Register them.
* (sys_spawnve): Place Emacs pid in EM_PARENT_PROCESS_ID.Geoff Voelker1998-05-301-1/+1
|
* (sys_select): Always wait on interrupt_handle, so thatRichard M. Stallman1998-05-151-2/+22
| | | | user can break out of `accept-process-input' (for instance) by typing C-g.
* (sys_kill): Fix indenting.Geoff Voelker1998-04-231-1/+1
|
* (w32_executable_type): Properly cast dos_header whenGeoff Voelker1998-04-171-8/+100
| | | | | | | | | | | | | | 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.
* Delete incorrect prototype of report_file_error.Karl Heuer1998-04-091-1/+1
|
* Include w32heap.h.Geoff Voelker1997-09-031-207/+692
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Vw32_start_process_share_console, Vw32_generate_fake_inodes, Vw32_get_true_file_attributes, Qhigh, Qlow, process_dir): New variables. (find_child_console, set_process_dir, Fw32_short_file_name, Fw32_long_file_name, Fw32_set_process_priority, Fw32_get_locale_info, Fw32_get_current_locale_id, Fw32_get_default_local_id, Fw32_set_current_locale): New functions. (CORRECT_DIR_SEPS): New macro. (create_child): Create a new console if subprocs don't share parent's. (reap_subprocess): Don't check for dos subprocesses. Add debug support. (sys_wait): Ignore socket child_procs. Check for quit while waiting. (w32_executable_type): Renamed from w32_is_dos_binary. Check for dos and Cygnus executables. (sys_spawnve): Always use cmdproxy if spawning a dos app. Use quotes to quote arguments for Cygnus apps, backslashes otherwise. Handle escape characters. Escape quotes at start and end, too. (sys_select): Treat null timeout as infinite. Add handles of child processes. Loop over handles round robin to ensure fairness. (sys_kill): Send ctrl-break and ctrl-c keystrokes to subprocesses on SIGINT if not sharing consoles, otherwise generate ctrl-break event. On other termination signals, send WM_QUIT message to Win95 apps and WM_CLOSE to NT apps. (syms_of_ntproc): Intern new symbols. defsubr new functions. DEFVAR new variables.
* Change all uses of win95, winnt, and win32Geoff Voelker1997-01-201-3/+3
| | | | | | | into Windows 95, Windows NT, and W32, respectively. Expand "win" substring in variables referring to Microsoft Windows constructs into "windows". Canonicalize header comments to use same terminology.
* (compare_env, merge_and_sort_env): New functions.Geoff Voelker1997-01-041-8/+58
| | | | | (sys_spawnve): Sort environment variables for subprocess. (ppid_env_var_buffer): Variable deleted.
* Use new names for w32 filesGeoff Voelker1996-11-191-1/+1
|
* Change identifiers of the form win32* to w32*.Geoff Voelker1996-11-191-26/+26
|
* (Vwin32_start_process_show_window): New variable.Richard M. Stallman1996-08-311-1/+14
| | | | | (create_child): Conditionally force subprocess to hide window. (syms_of_ntproc): DEFVAR it.
* (restrict_dos_process): Variable deleted.Richard M. Stallman1996-06-121-6/+3
| | | | (sys_spawnve): Restrict DOS processes on NT as well.
* (restrict_dos_process): Renamed from can_run_dos_process.Richard M. Stallman1996-06-121-4/+5
| | | | (sys_spawnve): Refer to restrict_dos_process.
* (Fwin32_has_winsock, Fwin32_unload_winsock) [HAVE_SOCKETS]: New functions.Richard M. Stallman1996-06-081-0/+73
| | | | (syms_of_ntproc) [HAVE_SOCKETS]: defsubr them.
* (sys_kill): Don't try to terminate a DOS process.Richard M. Stallman1996-06-071-3/+5
|
* (Vwin32_downcase_file_names): New variable.Richard M. Stallman1996-06-031-0/+9
| | | | (syms_of_win32fns): DEF_VAR it.
* (Vwin32_pipe_read_delay): New var.Karl Heuer1996-05-171-0/+91
| | | | | | | (can_run_dos_process, dos_process_running): New vars. (win32_is_dos_binary): New function. (reap_subprocess, sys_spawnve): Use them. (syms_of_ntproc): Defvar and initialize Vwin32_pipe_read_delay.
* (Vwin32_quote_process_args): New variable.Richard M. Stallman1996-05-101-10/+33
| | | | | (sys_spawnve): If Vwin32_quote_process_args, quote the args. (syms_of_ntproc): Set up Lisp variable.
* Include config.h after CRT headers. Include fcntl.h.Geoff Voelker1996-05-031-346/+523
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (child_process, MAX_CHILDREN, CHILD_ACTIVE): Moved to nt.h. (DebugPrint): New macro. (new_child): Create input event structures for child processes. (delete_child): New function. (reader_thread): Return nonzero upon failure. Use _sys_read_ahead. (create_child): Add child_process and parent PID arguments. Don't create input event or thread structures here. Fixup Win95 negative process IDs. (register_child): Don't set consumed event; instead, set thread status so that select will release it. (remove_child): Renamed to reap_process. Only free resources of synchronous children. (win32_wait): Renamed to sys_wait. Sanity check to make sure handle to subprocess exists. Don't reclaim thread resources here. (win32_spawnve): Renamed to sys_spawnve. Check for proper wait mode first thing. Convert command name to DOS format. Quote whitespace and quotes in arguments to subprocess. Use alloca instead of malloc. If max subprocesses, return EAGAIN in hopes of another completing. (sys_select): Add support for socket input. Remove dead code. Check input from children fairly. (sys_select) [HAVE_TIMEVAL]: Remove conditional check and code. (win32_kill_process): Renamed to sys_kill. Use OpenProcess to terminate process. (prepate_standard_handles, reset_standard_handles): Moved here from nt.c.
* Update FSF's address in the preamble.Erik Naggum1996-01-151-15/+16
|
* Comment fixes.Karl Heuer1996-01-051-1/+1
|