Commit Graph

10075 Commits

Author SHA1 Message Date
Christopher Faylor 27c6e45ea3 * autoload.cc (timeBeginPeriod): Delete.
* dcrt0.cc (dll_crt0_1): Use NtSetTimerResolution rather than timeBeginPeriod.
2013-12-18 04:39:36 +00:00
Christopher Faylor e9da9dfb94 * autoload.cc (timeBeginPeriod): Autoload.
* dcrt0.cc (dll_crt0_1): Use timeBeginPeriod to set default resolution to 1 ms.
* pinfo.cc (pinfo::thisproc): Set ppid for redirected _pinfo blocks too.
(pinfo::init): Avoid using VirtualQuery.  Just rely on the assumption that
procinfo will be populated.
* pinfo.h (_pinfo::ppid): Move into redirected block.
2013-12-18 04:28:46 +00:00
Christopher Faylor 13621d2ef8 * external.cc (fillout_pinfo): Remove nonsensical loop.
* fork.cc (frok::parent): When initializing pinfo for child new PID_NEW flag +
actual defined constant rather than raw number.  Don't set start_time here.
* pinfo.cc (pinfo::thisproc): Use PID_NEW when initializing pinfo.  Avoid
checking h for NULL multiple times.  Don't set start_time here.
(pinfo_init): Aways set ppid last.  Tweak strace output.
(pinfo::init): Handle new PID_NEW flag.  Wait for shared memory to contain
useful information.  Set start_time if PID_NEW.
(_onreturn:h): Define as HANDLE rather than HANDLE *.
(_onreturn::~onreturn): Accommodate h definition change.
(_onreturn::no_close_handle): Rename from no_close_p_handle.  Take a pinfo arg
and set hProcess to h before zeroing.
(winpids::add): Don't open a handle to our own process.  Change logic
associated with when a handle gets closed.  Accommodate no_close_handle
changes.
(winpids::enum_processes): Simplify process enumeration loop.
(winpids::set): Eliminate ill-considered malloc locking.
* sigproc.cc (proc_subproc): Always set ppid last.
2013-12-18 03:58:11 +00:00
Christopher Faylor 1147c2111d * sigproc.cc (sig_send): Set PIPE_NOWAIT for pipes which are not us. 2013-12-18 03:01:39 +00:00
Christopher Faylor 891b1e7e22 * fhandler.h (fhandler_pty_master::~fhandler_pty_master): Delete.
* fhandler_tty.cc (fhandler_pty_master::~fhandler_pty_master): Ditto.
2013-12-17 19:05:26 +00:00
Corinna Vinschen f51db32d8c * syscalls.cc (NT_TRANSACTIONAL_ERROR): Define.
(stop_transaction): Take "trans" HANDLE by reference and set it to
	NULL after closing it.
	(unlink_nt): If NtOpenFile fails due to a transactional error, stop
	transaction and retry NtOpenFile.  Simplify check for having to call
	stop_transaction.
	(rename): If NtOpenFile fails due to a transactional error, stop
	transaction and retry NtOpenFile in both affected cases.  Simplify check
	for having to call stop_transaction and add comment from unlink_nt.
2013-12-11 12:12:12 +00:00
Corinna Vinschen c28222be54 * mount.cc (fs_info::update): Fix formatting. 2013-12-11 10:24:52 +00:00
Corinna Vinschen f2988299eb * fhandler.h (fhandler_dev_clipboard): Add private member
cygnativeformat.  Declare private method set_clipboard.
	* fhandler_clipboard.cc (cygnativeformat): Convert static variable to
	fhandler_dev_clipboard member.
	(fhandler_dev_clipboard::set_clipboard): Convert from static function
	to fhandler_dev_clipboard method.
2013-12-10 21:05:23 +00:00
Christopher Faylor a3afe81551 signal hang 2013-12-09 20:47:13 +00:00
Christopher Faylor ae8456bdf2 * globals.cc (hntdll): Define/declare.
* exceptions.cc (inside_kernel): Don't call GetModuleFileName if we know we're
in ntdll.
* sigproc.cc (wait_sig): Initialize hntdll.
2013-12-09 20:32:24 +00:00
Corinna Vinschen db0d50a67d * include/cygwin/stdlib.h (initstate, random, setstate, srandom):
Harden _XOPEN_SOURCE guard against applications defining _XOPEN_SOURCE
	with empty value.
2013-12-09 10:12:42 +00:00
Corinna Vinschen 4726a0e769 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 28. 2013-12-08 13:42:16 +00:00
Corinna Vinschen 9a0027836f *** empty log message *** 2013-12-08 13:38:27 +00:00
Corinna Vinschen 17bb9160d5 * new-features.xml (ov-new1.7.26): Add new section. 2013-12-07 10:12:55 +00:00
Corinna Vinschen 7630387c51 * path.cc (symlink_native): Workaround Windows 8.1 bug: Drop long path
prefix from symlink target path.  Add comment to explain why.
2013-12-07 10:12:25 +00:00
Christopher Faylor 870f29b5c3 * syscalls.cc (dup): Use cygheap_fdnew properly. 2013-12-06 15:38:21 +00:00
Christopher Faylor 09244c002e * cygheap.h (cygheap_fdnew): Avoid setting errno directly since it will have
been set by a previous function.
* dtable.h (dtable::extend): Accept second size_t argument.
* dtable.cc (dtable::extend): Accept second "min" argument which allows
checking for OPEN_MAX_MAX boundary conditions.
(dtable_init): Accommodate second argument to dtable::extend.
(dtable::find_unused_handle): Ditto.
* syscalls.cc (setdtablesize): Ditto.
(dup): Return any error passed by cygheap_fdnew() directly.
(getdtablesize): Just return dtable size directly.
2013-12-05 19:43:34 +00:00
Christopher Faylor 9915ebec8a * dtable.cc (dtable::find_unused_handle): When extending, always make sure that
there is a NOFILE_INCR chunk following the free fd.
2013-12-04 17:55:17 +00:00
Christopher Faylor d924d6b583 * configure.ac: Back out stupid change.
* configure: Regenerate.
2013-12-03 20:51:05 +00:00
Christopher Faylor 4bf6a52173 * select.cc (select): Add workaround for, as yet undebugged, pathological case. 2013-12-03 20:28:55 +00:00
Christopher Faylor d7f07b3dde * configure.ac: Don't require 64-bit compiler for 32-bit builds.
* configure: Regenerate.
2013-12-03 18:37:40 +00:00
Christopher Faylor 9262c05537 * dtable.cc (dtable::find_unused_handle): Break out of the right loop. 2013-12-01 19:17:56 +00:00
Christopher Faylor f456b9f6f8 * dtable.cc (dtable::find_unused_handle): Fix off-by-one error. Always exit
through the bottom.
(cygwin_attach_handle_to_fd): Make sure that fd tab is locked for the duration
of this function.
* dtable.h (dtable::lock): Make public.
(dtable::unlock): Ditto.
(dtable): Remove friends.
2013-12-01 17:52:48 +00:00
Corinna Vinschen 10a5939224 Fix ChangeLog entry 2013-12-01 10:47:29 +00:00
Corinna Vinschen eeaa47ef21 * dtable.cc (dtable::extend): Change local variable new_size to size_t
as well.

	* thread.cc: Fix comment.
2013-12-01 10:27:16 +00:00
Christopher Faylor bc54373f85 . 2013-12-01 02:58:03 +00:00
Christopher Faylor 499494d2cc * dtable.h (dtable::first_fd_for_open): Change declaration to size_t.
(dtable::extend): Change parameter to size_t.
(dtable::find_unused_handle): Ditto.
* dtable.cc: Remove now-unused header.
(dtable::extend): Remove pointless test.  Change parameter to size_t.
(dtable::find_unused_handle): Rework to avoid MAX calculation in extend() call.
Change parameter to size_t.
2013-12-01 02:52:54 +00:00
Christopher Faylor 483c843a6a * dtable.cc (build_fh_pc): When creating an archetype, use native name rather
than unix name if name doesn't exist.
2013-12-01 02:09:22 +00:00
Christopher Faylor 8116e5e59b * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 27. 2013-11-29 13:31:54 +00:00
Jon TURNEY 390aa0b67f * include/cygwin/stdlib.h(initstate, random, setstate, srandom) :
Prototype if not __STRICT_ANSI__ or _XOPEN_SOURCE is defined appropriately.
2013-11-29 13:05:43 +00:00
Corinna Vinschen fea986bdc6 * new-features.xml (ov-new1.7.26): Fix section ID and title. Add
posix_spawn item.
2013-11-29 10:14:13 +00:00
Corinna Vinschen f8b02da153 * include/glob.h: Fix invalid use of 'restrict' error. 2013-11-28 10:00:01 +00:00
Corinna Vinschen 376b177749 * syscalls.cc (try_to_bin): Enhance debug output in case reopen fails. 2013-11-27 14:48:27 +00:00
Corinna Vinschen 1aaa128794 * syscalls.cc (try_to_bin): Drop fh_dup, reuse tmp_fh instead. 2013-11-27 14:30:36 +00:00
Corinna Vinschen 854ed5f03a * syscalls.cc (try_to_bin): Take additional parameter to get file open
flags.  If the file to move to the bin has been opened casesensitive,
	reopen it caseinsensitive.  Explain why.  Revert the default name of
	the Vista-and-later recycler to mixed case for readability.
	(unlink_nt): Call try_to_bin with file open flags as evaluated.
2013-11-27 14:27:34 +00:00
Corinna Vinschen a50f8f5973 * nlsfuncs.cc (wcscoll): Add "__restrict" to definition.
(wcsxfrm): Ditto.
2013-11-26 17:27:25 +00:00
Corinna Vinschen bb9d95eb38 * common.din: Export posix_spawn[...] functions.
* exec.cc (execve): Add EXPORT_ALIAS _execve.
	* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
	* posix.sgml (std-susv4):  Add posix_spawn[...] here.
	(std-notimpl): Drop here.
2013-11-26 17:11:09 +00:00
Corinna Vinschen d12e1c0670 * nlsfuncs.cc (strcoll): Add "__restrict" to definition.
(strxfrm): Ditto.
2013-11-26 17:08:56 +00:00
Corinna Vinschen 3073f26d6a Throughout, keep function definitions and declarations in sync with
newlib in terms of C99 "restrict" keyword.
2013-11-25 11:38:08 +00:00
Corinna Vinschen bd1af1cab5 * dtable.cc: Include sys/param.h for MAX definition. 2013-11-24 13:01:25 +00:00
Corinna Vinschen d2a88d9792 Throughout, drop unnecessary explicit includes of windows header files
included by default.
	* winlean.h: Add long comment to explain why we have to define certain
	symbols.
	(_NORMALIZE_): Define.
	(_WINNLS_): Drop definition and subsequent undef.
	(_WINNETWK_): Ditto.
	(_WINSVC_): Ditto.

2013-11-23  Eric Blake  <eblake@redhat.com>
2013-11-24 12:13:36 +00:00
Corinna Vinschen 6958a5e8f1 *** empty log message *** 2013-11-24 12:09:18 +00:00
Eric Blake 3a4ce7315f dup2: fix off-by-one crash
* dtable.cc (dup3): Fix off-by-one.
(find_unused_handle): Reduce time spent expanding during dup.
* syscalls.cc (setdtablesize): Report error on invalid value.
2013-11-23 13:51:53 +00:00
Corinna Vinschen 7a5be33eb5 * new-features.xml (ov-new1.7.26): Add new section. 2013-11-23 11:39:51 +00:00
Corinna Vinschen c03063e2fc * include/cygwin/stdlib.h (realpath): Drop declaration. It's declared
in newlib's stdlib.h now.
2013-11-20 09:48:04 +00:00
Corinna Vinschen 8856f1f00e * cygcheck.cc (RtlGetVersion): Declare.
(dump_sysinfo): Call RtlGetVersion rather than GetVersionEx to get
	correct OS info even on Windows 8.1.  Don't check return value since
	RtlGetVersion never fails per MSDN.  Move fetching kernel32 module
	handle where it's really needed.  Drop temporary comment added by
	previous checkin.
2013-11-19 22:26:37 +00:00
Corinna Vinschen c9f36df332 * ntdll.h (RtlGetVersion): Declare.
* wincap.cc (wincapc::init): Rather than GetVersionEx, call
	RtlGetVersion which is not crippled by missing Windows 8.1 manifest.
	* wincap.h (wincapc): Change type of version to RTL_OSVERSIONINFOEXW.
	Align formatting of all class members.
2013-11-19 22:21:11 +00:00
Corinna Vinschen f8863cbe54 * cygcheck.cc (dump_sysinfo): Revert Windows 8.1 hack. It's not
working.  Add a (hopefully temporary) comment.
2013-11-19 20:43:04 +00:00
Corinna Vinschen 690d1333f5 * wincap.cc (wincapc::init): Revert previous change. It's not working. 2013-11-19 20:37:27 +00:00
Corinna Vinschen 32da4b09d2 *** empty log message *** 2013-11-19 18:10:47 +00:00