Commit Graph

10084 Commits

Author SHA1 Message Date
Christopher Faylor 6aa3bb2f66 * sigproc.h (hold_everything::ischild): Declare as reference.
(hold_everything::hold_everything): Store address of caller's notion of
"ischild".
2013-09-25 15:58:45 +00:00
Christopher Faylor 1dc2c177f4 * thread.cc (semaphore::_getvalue): Set *sval as appropriate. Set errno and
return -1 on error.
2013-09-25 14:44:45 +00:00
Christopher Faylor 9a2f0cff8f * dump_setup.cc (find_tar_ext): Generalize search for .tar extension, avoiding
looking for specific compression types.
2013-09-16 17:01:58 +00:00
Corinna Vinschen 3c654cd48a * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Belatedly bump
to 25.
2013-08-31 18:05:31 +00:00
Corinna Vinschen bffd6fb0e2 * heap.cc (RAISEHEAP_SIZE): New definition.
(user_heap_info::sbrk): Make failed commit an error condition again.
	Only reserve RAISEHEAP_SIZE sized chunk for further heap reservations
	by default.
2013-08-31 10:21:48 +00:00
Corinna Vinschen 348f503460 *** empty log message *** 2013-08-30 21:42:40 +00:00
Christopher Faylor 617b2bf99f . 2013-08-30 21:33:43 +00:00
Christopher Faylor 6fc77d3e75 * cygheap.h (user_heap_info::sbrk): Declare new function.
(user_heap_info::init): Ditto.
* heap.cc (user_heap_info::init): Rename from heap_init().  Avoid explictly
using cygheap->user_heap.
(sbrk): Use user_heap_info method via cygheap->user_heap.
(user_heap_info::sbrk): Renamed from sbrk().  Eliminate explicit use of
cygheap->user_heap.  Change some pointer arithmetic to use (char *) for
consistency.
* shared.cc (shared_info::initialize): Change heap_init call to
cygheap->user_heap.init.
2013-08-30 21:02:02 +00:00
Corinna Vinschen 9f0de58c22 *** empty log message *** 2013-08-30 20:01:22 +00:00
Corinna Vinschen b03bd1f41c * heap.cc (sbrk): Add a FIXME comment to VirtualFree call. Fix memory
reservation and commit strategy when more memory is requested than
	available on the heap.  Release newly reserved memory if commiting
	it fails.  Add more comments to explain what we do.
2013-08-30 20:01:10 +00:00
Corinna Vinschen a723366660 * fhandler_tape.cc (mtinfo_drive::open): Handle bus reset gracefully
after opening the device.
2013-08-30 17:39:11 +00:00
Christopher Faylor c5abf768f9 * sigproc.cc (pending_signals::add): Properly maintain linked list.
(wait_sig): Use already calculated 'next' element when signal is blocked.
2013-08-30 15:44:57 +00:00
Corinna Vinschen 6585330779 * mtinfo.h (class mtinfo_part): Change type of block numbers to int64_t.
(mtinfo_part::initialize): Ditto for nblock parameter in declaration.
	(class mtinfo_drive): Change type of block number to int64_t.  Change
	all parameters indicating a block number to int64_t in method
	declarations.
	* fhandler_tape.cc (mtinfo_part::initialize): Ditto in definition.
	(mtinfo_drive::get_pos): Ditto.  Replace low and high with a
	ULARGE_INTEGER and use it's components in call to GetTapePosition.
	Store full value in block.
	(mtinfo_drive::_set_pos): Change type of count parameter to int64_t.
	Change call to SetTapePosition accordingly.
	(mtinfo_drive::set_pos): Change type of count parameter to int64_t.
	Change local variables holding block numbers accordingly.
	(mtinfo_drive::get_status): Don't bail out early if fetching media
	parameters fails.
	(mtinfo_drive::ioctl): Add explicit cast matching receiving type in
	MTTELL and MTIOCPOS calls.
2013-08-26 16:14:40 +00:00
Corinna Vinschen 8451a289cc * flock.cc (lockf_t::from_obj_name): Fix test for valid pid. 2013-08-23 20:40:27 +00:00
Christopher Faylor 94f900f805 * cygcheck.cc (package_grep): Accommodate arch-specific package layout. 2013-08-23 19:56:26 +00:00
Christopher Faylor 1560d3e281 cygwin changes:
* spawn.cc (child_info_spawn): Revert previous change.  Always set
	lpReserved2.
	* release/1.7.25: Change wording.
doc changes:
	* new-features.xml (ov-new1.7.25): Change wording.
2013-08-23 18:19:46 +00:00
Christopher Faylor 0d585a6e8c * child_info.h (PROC_MAGIC_GENERIC): Define differently for x86 vs. x86_64. 2013-08-23 14:32:28 +00:00
Corinna Vinschen 78aaee2321 * new-features.xml (ov-new1.7.25): Add new section. 2013-08-23 09:46:41 +00:00
Corinna Vinschen bb1114d912 *** empty log message *** 2013-08-23 09:43:58 +00:00
Corinna Vinschen 10822894db * path.h (enum path_types): Drop definition of PATH_64BITEXEC.
(path_conv::iscygexec32): Drop unused inline function.
	(path_conv::iscygexec64): Ditto.
	(path_conv::set_cygexec): Remove unnecessary setting of PATH_64BITEXEC.
	* spawn.cc (child_info_spawn::worker): Disable setting of
	STARTUPINFOW::lpReserved2 and STARTUPINFOW::cbReserved2 for non-Cygwin
	child processes.  Explain why.
2013-08-23 09:29:25 +00:00
Corinna Vinschen 3ee82da30d * fhandler_tape.cc (mtinfo_drive::create_partitions): Allow partitioning
of drives supporting select partitions.
	(mtinfo_drive::get_status): Fill in current partition and number of
	partitions on tape into mt_resid.
	* include/cygwin/mtio.h (struct mtget): Align mt_resid comment to
	aforementioned change.
	* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2013-08-21 20:28:12 +00:00
Corinna Vinschen 30990eaa27 * fhandler_tape.cc (mtinfo_drive::create_partitions): Fix long-standing
bug disabling creation of two partitions on drives supporting initiator
	partitions.
	(mtinfo_drive::set_blocksize): Update media information after setting
	blocksize succeeded.
	(mtinfo_drive::get_status): Fetch fresh media information.
2013-08-20 20:17:14 +00:00
Corinna Vinschen 651133f28d * lc_msg.h: Regenerate.
* nlsfuncs.cc (__get_lcid_from_locale): Update list of Script-only
	locales to Windows 8.
	(__set_charset_from_locale): Take locales added with Windows 8 and 8.1
	into account.
2013-08-19 16:21:29 +00:00
Corinna Vinschen 48199c0d39 * fhandler_tape.cc (mtinfo_drive::set_pos): Remove unneeded linebreak.
(mtinfo_drive::get_status): Drop using get_ll when it's not required.
2013-08-19 10:24:37 +00:00
Corinna Vinschen 890d4161d8 Drop redundant entry 2013-08-15 09:49:51 +00:00
Corinna Vinschen b4e7956e5f * new-features.xml (ov-new1.7.24): Add new section. Mention
posix_memalign override.
2013-08-14 11:44:46 +00:00
Corinna Vinschen ef23b0a6a4 * include/sys/cygwin.h (struct per_process): Add posix_memalign. Reduce
size of unused2 accordingly.
	* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
	* lib/_cygwin_crt0_common.cc (_cygwin_crt0_common): Initialize
	u->posix_memalign with address of posix_memalign.
	* malloc_wrapper.cc (posix_memalign): Call user-provided posix_memalign
	rather than just returning ENOSYS.
	* globals.cc (__cygwin_user_data): Initialize posix_memalign member.
2013-08-14 11:44:23 +00:00
Corinna Vinschen 2da426bee6 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 24. 2013-08-09 09:12:55 +00:00
Corinna Vinschen d23db5c830 * fhandler_disk_file.cc (fhandler_base::open_fs): Fix indentation. 2013-08-07 09:04:39 +00:00
Christopher Faylor 5213ca6f1c * fhandler_tty.cc: Revert accidental checkin.
* update-copyright: Ditto.
2013-07-31 15:19:18 +00:00
Christopher Faylor 24557e9caa * cygheap.cc (cmalloc): Use size_t for size field.
(cmalloc_abort): Ditto.
(crealloc): Ditto.
(crealloc_abort): Ditto.
(ccalloc): Ditto.
(ccalloc_abort): Ditto.
* cygheap_malloc.h (HEAP_USER): Add.
(cmalloc): Use size_t for size field in declaration.
(cmalloc_abort): Ditto.
(crealloc): Ditto.
(crealloc_abort): Ditto.
(ccalloc): Ditto.
(ccalloc_abort): Ditto.
* path.cc (normalize_posix_path): Don't check existence of / or // dir in
parent dir check.
2013-07-31 14:43:05 +00:00
Corinna Vinschen c39e8632d1 *** empty log message *** 2013-07-31 10:32:46 +00:00
Corinna Vinschen fd5f6eb13e * path.cc (normalize_posix_path): Don't check existence of / or // dir
in parent dir check.
2013-07-31 10:26:51 +00:00
Corinna Vinschen 7df2c73d5d * Makefile.in (MINGW_LDFLAGS): Don't link against w32api libs. These
are only for Cygwin executables.
2013-07-31 09:58:55 +00:00
Corinna Vinschen 96b3b10abf Fix typo 2013-07-30 16:14:34 +00:00
Corinna Vinschen 4a4b9b4813 *** empty log message *** 2013-07-30 08:06:04 +00:00
Corinna Vinschen 7e20c854cf * Makefile.in (cyglsa.dll): Explicitely specify DLL entry point to
harden against gcc function and block reordering optimizations.
	(cyglsa64.dll): Ditto.
2013-07-29 18:57:16 +00:00
Christopher Faylor 033fe7d87f cygwin directory changes:
* environ.cc (tty_is_gone): Delete.
	(known): Delete tty, add wincmdln.
	* globals.cc: Reorganize list of environment bools, remove explicit =
	false for slight load time optimization.
	(wincmdln): New global.
	* spawn.cc (child_info_spawn::worker): Honor wincmdln.

doc directory changes:
	* new-features.sgml (ov-new1.7.23): Add new section.  Mention wincmdln.
	* cygwinenv.xml: Mention wincmdln.
2013-07-26 17:28:00 +00:00
Corinna Vinschen a30f955d28 * gcc.xml (gcc-64): Fix example. 2013-07-25 09:09:14 +00:00
Corinna Vinschen a90f2ca74f * gcc.xml (gcc-default: Rename from gcc-cons. Change title.
(gcc-64): New section explaininig differences in programming for
	64 bit Cygwin.
	(gcc-gui): Simplify description and aim at UNIX/Linux developers only.
	Note that X programming is preferred.  Drop example.
2013-07-25 09:04:21 +00:00
Corinna Vinschen 5709fcbfe5 Fix copyright date 2013-07-24 14:21:13 +00:00
Corinna Vinschen 9f7d1ba43d *** empty log message *** 2013-07-24 13:02:15 +00:00
Corinna Vinschen 16efa64721 * ntdll.h (struct _SEMAPHORE_BASIC_INFORMATION): Define.
(enum _SEMAPHORE_INFORMATION_CLASS): Define.
	(NtQuerySemaphore): Declare.
	* thread.h (class semaphore): Add member startvalue.
	(semaphore::fixup_before_fork): New inline method.
	(semaphore::_fixup_before_fork): Declare.
	* thread.cc (MTinterface::fixup_before_fork): Additionally call
	semaphore::fixup_before_fork.
	(semaphore::semaphore): Set currentvalue to -1.  Set startvalue to
	incoming initializer value.
	(semaphore::_getvalue): Just query semaphore using NtQuerySemaphore
	rather then using WFSO/Release.
	(semaphore::_post): Drop setting currentvalue.  It's not thread-safe.
	(semaphore::_trywait): Ditto.
	(semaphore::_timedwait): Ditto.
	(semaphore::_wait): Ditto.
	(semaphore::_fixup_before_fork): New method, setting currentvalue from
	actual windows semaphore right before fork.
	(semaphore::_fixup_after_fork): Drop kludge from 2013-07-10.  Drop
	FIXME comment.
2013-07-23 14:15:20 +00:00
Corinna Vinschen 6c1f4d7d64 * cygtls.cc (well_known_dlls): Add kernelbase.dll. 2013-07-23 12:46:02 +00:00
Corinna Vinschen 3fdddd7d77 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 23. 2013-07-22 15:08:54 +00:00
Corinna Vinschen 463cca40bd * new-features.sgml (ov-new1.7.22): Add GetCommandLine and regcomp
changes.
2013-07-21 19:30:19 +00:00
Corinna Vinschen e6ff6a18d4 * regex/regcomp.c (wgetnext): Add a kludge to be more glibc compatible.
Add comment to explain.
2013-07-21 19:28:45 +00:00
Corinna Vinschen ca5eb1cba5 * Makefile.in (cygwin-ug-net/cygwin-ug-net.html): Add dependency to
cygwin.xsl.
	(cygwin-api/cygwin-api.html): Ditto.
	(cygwin-ug-net/cygwin-ug-net.pdf): Add dependency to fo.xsl.
	(cygwin-api/cygwin-api.pdf): Ditto.
	(cygwin-api.xml): Drop "." path component from doctool dependency.
	Change Makefile to Makefile.in dep.
	(doctool): Drop "." path component from target.
2013-07-21 10:16:53 +00:00
Christopher Faylor d31805a14c * exceptions.cc (signal_exit): Remove comment. Use __builtin_frame_address. 2013-07-20 17:11:44 +00:00
Christopher Faylor 5ce53ae0ea * exceptions.cc (signal_exit): Nope. Nevermind. Dump core unconditionally. 2013-07-20 16:19:51 +00:00
Corinna Vinschen 198d56529a * Makefile.in (cygwin-ug-net/cygwin-ug-net.pdf): Process input via
xsltproc and fop.
	(cygwin-api/cygwin-api.pdf): Ditto.
	* fo.xsl: New file.
2013-07-20 10:44:50 +00:00
Christopher Faylor efe8407eca reword comment 2013-07-19 23:19:27 +00:00
Christopher Faylor fb6cf945f9 * exceptions.cc (signal_exit): Add a FIXME comment. 2013-07-19 23:13:58 +00:00
Christopher Faylor 3a4dab46c3 * exceptions.cc (signal_exit): Only dump core when it's a "kernel" signal.
Only use RtlCaptureContext on x86_64.  It doesn't seem to do what's expected on
x86.
2013-07-19 23:04:32 +00:00
Christopher Faylor bbdd6c47c9 * spawn.cc (child_info_spawn::worker): Reinstate using temp buffer for wide
character command-line storage.  Use wcs method to convert command line.
* winf.h (lb_wcs): Delete.
(linebuf::wcs): Implement new single-argument method.
2013-07-19 22:44:02 +00:00
Christopher Faylor 132e0f0182 * lib/libcmain.c (main): Don't point to last quoted character if the only thing
in the buffer is the program name.
2013-07-19 19:04:13 +00:00
Christopher Faylor 4741932459 . 2013-07-19 17:45:18 +00:00
Christopher Faylor efef69e738 fix comment typo 2013-07-19 17:44:08 +00:00
Christopher Faylor f53c4d6921 . 2013-07-19 17:29:01 +00:00
Christopher Faylor 521953a83a * common.din: Export GetCommandLine{A,W}.
* kernel32.cc: Add includes needed for GetCommandLine functions.
(ucmd): New function.
(cygwin_GetCommandLineW): Ditto.
(cygwin_GetCommandLineA): Ditto.
* spawn.cc (child_info_spawn::worker): Rename one_line -> cmd.  Use lb_wcs
macro to generate a wide character version of the line buffer.  Remove
duplicate printing of command line.  Don't access members of linebuf directly.
* winf.h: Use pragma once.
(linebuf): Make storage private.
(linebuf::operator size_t): New operator.  Return size of buf.
(linebuf::operator wchar_t): New operator.
(linebuf::wcs): New function.
(lb_wcs): New macro.
* include/cygwin/version.h: Bump API minor number to 268.
* strfuncs.cc: Clarify descriptive file comment.
2013-07-19 17:28:34 +00:00
Corinna Vinschen 4b25516b5d *** empty log message *** 2013-07-19 12:13:21 +00:00
Corinna Vinschen 78cefca9fc * cygtls.cc (_cygtls::remove): Close cw_timer handle, thus avoiding
handle leak.
2013-07-19 11:54:51 +00:00
Corinna Vinschen 000235c38d * cygserver_ipc.h (ipc_retval::ipc_retval): Take ssize_t as argument
to make sure entire ipc_retval union is initialized on all supported
	platforms.
2013-07-19 11:32:54 +00:00
Corinna Vinschen aff6ef0db4 * path.cc (normalize_posix_path): Start checking path before ".." at
dst, rather than at dst_start, otherwise suffer loss of one leading
	slash in case of UNC paths.
2013-07-18 10:11:33 +00:00
Christopher Faylor e6f4f3f7ee * winsup.h (cygbench): Fix declaration to match definition.
* dcrt0.cc (initial_env): Remove unused variable.
2013-07-17 17:46:10 +00:00
Corinna Vinschen f7180e5eac * new-features.sgml (ov-new1.7.22): New section. Document dropped
support for /dev/mem, /dev/kmem, /dev/port.
	* specialnames.xml (pathnames-posixdevices): Drop description of
	/dev/mem, /dev/kmem, /dev/port.
2013-07-15 14:00:32 +00:00
Corinna Vinschen 4c4693008a Remove /dev/mem, /dev/kmem, /dev/port support.
* Makefile.in (DLL_OFILES): Drop fhandler_mem.o.
	(fhandler_mem_CFLAGS): Remove rule.
	* devices.in (enum fh_devices): Remove FH_MEM, FH_KMEM and FH_PORT.
	* devices.cc: Regenerate.
	* dtable.cc (fh_alloc): Drop handling for FH_MEM, FH_KMEM and FH_PORT.
	* fhandler.h (class fhandler_dev_mem): Remove.
	* fhandler_mem.cc: Remove file.
	* globals.cc (ro_u_pmem): Remove.
	* mmap.cc (fhandler_dev_mem::mmap): Remove.
	(fhandler_dev_mem::munmap): Remove.
	(fhandler_dev_mem::fixup_mmap_after_fork): Remove.
2013-07-15 13:54:27 +00:00
Corinna Vinschen 7ea982e75a * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 22. 2013-07-15 11:44:04 +00:00
Corinna Vinschen b14cc73a4a *** empty log message *** 2013-07-15 10:04:03 +00:00
Corinna Vinschen 7556523159 * path.cc (symlink_native): Fix common prefix search. Enhance comment. 2013-07-15 09:57:20 +00:00
Corinna Vinschen 3b2560e500 * uname.cc (uname): Drop unused code. 2013-07-11 11:20:38 +00:00
Christopher Faylor 41f9a410cc * gentlsoffsets: Clean up a little.
* thread.cc (semaphore::_fixup_after_fork): Report on potential problem
parameter.  Make sure that currentvalue is never zero.
(semaphore::init): Make cosmetic change.
2013-07-10 20:58:33 +00:00
Corinna Vinschen e3d9d8dfdc * cygwin.sc.in (.text.*): Fold into .text on all platforms.
(.eh_frame): Add section.
	* environ.cc (my_findenv): Drop __stdcall attribute.
	(getearly): Ditto.
	(findenv_func): Drop cast.
2013-07-10 12:15:32 +00:00
Christopher Faylor 57e9250aa2 Add an entry. 2013-07-08 04:03:58 +00:00
Christopher Faylor 40f11fc133 * cygcheck.cc (dll_info): Detect and report on symlinks. Output wrong
architecture message inline with stdout for clarity.
* path.cc (is_symlink): Always reset file pointer to beginning on exit.
(readlink): Assume that file pointer is set to the beginning.
2013-07-07 16:57:11 +00:00
Christopher Faylor 286eeb8fae . 2013-07-03 20:29:03 +00:00
Christopher Faylor 470b8544e8 * fhandler.cc (fhandler_base::close_with_arch): Make sure that the archetype is
deleted when close_with_arch is referenced *via* the archetype.
2013-07-03 20:26:44 +00:00
Corinna Vinschen 562b70fbac * path.cc (find_fast_cwd_pointer): Use gas syntax for assembler
description in all comments.  Make algorithm work on Windows 8.1
	Preview.
2013-06-28 10:52:30 +00:00
Corinna Vinschen 9626422634 * dcrt0.cc (child_info_fork::alloc_stack): Fix a comparison to avoid
taking 4K more stack in forked child.
	* fork.cc (frok::parent): Print child exit code in hex if sync failed.
2013-06-27 17:00:12 +00:00
Corinna Vinschen 733b554b20 * cygpath.cc (do_pathconv): when -p option is given, generate wide
path without long path prefixing.
	* wide_path.h (wide_path::wide_path): Allow extra bool parameter to
	specify whether or not performing Windows long path prefixing.
2013-06-26 13:10:35 +00:00
Yaakov Selkowitz 8131499d73 * new-features.sgml (ov-new1.7.21): New section. Document rawmemchr. 2013-06-24 15:30:49 +00:00
Yaakov Selkowitz ccccd71d58 * common.din (rawmemchr): Export.
* posix.sgml (std-gnu): Add rawmemchr.
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
2013-06-24 15:12:40 +00:00
Corinna Vinschen d21edf5276 * path.cc (cygwin_conv_path): Handle NULL "from" path gracefully.
* path.sgml (func-cygwin-conv-path): Document returning EINVAL if
	"from" is NULL.
2013-06-21 08:14:26 +00:00
Corinna Vinschen e18222a23c * faq-using.xml (faq.using.private-cygwin): Drop. 2013-06-19 17:34:07 +00:00
Christopher Faylor 5e24aee56c * winf.h (av::unshift): Make __reg2. 2013-06-19 17:21:25 +00:00
Corinna Vinschen 44f65eb9bb *** empty log message *** 2013-06-19 16:05:04 +00:00
Christopher Faylor 37ee5b49af * spawn.cc (child_info_spawn::worker): Eliminate call to newargv.set() in favor
of conglomerated newargv.setup().  Let newargv.setup() decide when to call
dup_all().  Only set argc and argv for cygwin processes.
(av::setup): Rename from av::fixup.  Accept argc and argv parameters.  Fill out
argv and argc here.  Duplicate whole argv structure when this is a Cygwin
executable.
* winf.cc (linebuf::fromargv): Don't bother duplicating argv elements since
they will never be used.
* winf.h (av::set): Delete.
(av::setup): Rename from av::fixup.  Add two parameters.
(av::replace0_maybe): Assign calloced to 1 rather than 'true' for clarity.
(av::dup_maybe): Delete.
(av::dup_all): Set calloced to show that we have duplicated all of the
arguments in the list.
2013-06-19 16:00:43 +00:00
Corinna Vinschen c1d6d05470 * nlsfuncs.cc (__collate_range_cmp): Convert input to wchar_t and call
wcscoll since all calling functions are using wide chars.  Explain in
	preceeding comment.
2013-06-19 15:24:48 +00:00
Christopher Faylor 9e8cf6ebbd * spawn.cc (child_info_spawn::worker): Eliminate wascygexec. 2013-06-19 14:39:00 +00:00
Corinna Vinschen f2407e2210 * faq-using.xml (faq.using.multiple-copies): Modernize to reflect
installation separation since Cygwin 1.7.
	(faq.using.third-party.multiple-copies): Ditto.
2013-06-19 08:42:48 +00:00
Christopher Faylor 9a52d79f10 * dcrt0.cc (child_info_fork::alloc_stack): Don't subtract 4096 from stack
pointer since getstack() already does that.
2013-06-19 05:06:35 +00:00
Corinna Vinschen ac0937807d *** empty log message *** 2013-06-18 10:12:16 +00:00
Corinna Vinschen 700f8d5902 * gmon.c: Drop gratuitous inclusion of strings.h. Remove __MINGW32__
around definition of bzero.
2013-06-18 10:01:33 +00:00
Corinna Vinschen 943072f45c * Makefile.in (VPATH): Drop CONFIG_DIR.
(EXTRA_DLL_OFILES): Remove.
	(DLL_OFILES): Remove EXTRA_DLL_OFILES.
	(ASFLAGS): Define as -D_WIN64 on x86_64.
	(GMON_OFILES): Add mcountFunc.o.
	($(srcdir)/$(TLSOFFSETS_H)): Use target_cpu rather than CONFIG_DIR.
	* configure.ac (CONFIG_DIR): Remove definition.
	* configure: Regenerate.
	* gcrt0.c: Use latest version from Mingw-w64 project.
	* gmon.c: Ditto.
	* gmon.h: Ditto.
	* mcount.c: Ditto.
	* mcountFunc.S: Ditto, new file.
	* profil.c: Ditto.
	* profil.h: Ditto.
	* config: Remove entire directory.
2013-06-18 09:45:37 +00:00
Corinna Vinschen c381968842 * Makefile.common: Add rule to build assembler code.
(.SUFFIXES): Add .S.
2013-06-18 09:45:16 +00:00
Corinna Vinschen 2566c2e600 * path.cc (cnt_bs): New inline function.
(symlink_native): Fix creating relative native symlink.
2013-06-17 12:37:09 +00:00
Corinna Vinschen 42c8e85109 * fhandler_clipboard.cc (fhandler_dev_clipboard::read): Fix buffer
read access overrun when pos > 0.
2013-06-17 10:11:54 +00:00
Corinna Vinschen f4ddbb8ebf * times.cc (GetSystemTimePreciseAsFileTime): Add comment to declaration.
(__to_clock_t): Remove a debug_printf.
	(times): Align syscall_printf to debug output of other system calls.
2013-06-17 08:33:41 +00:00
Corinna Vinschen 2e72b72fcc * cygwinenv.xml: Fix link to FAQ. 2013-06-17 08:29:34 +00:00
Corinna Vinschen 7584fa98d4 * autoload.cc (GetSystemTimePreciseAsFileTime): Define.
* times.cc (GetSystemTimePreciseAsFileTime): Temporarily declare here
	to workaround missing definition in 32 bit w32api headers.
	(get_system_time): New always inline function to call either
	GetSystemTimePreciseAsFileTime or GetSystemTimeAsFileTime on a per OS
	basis.  Call throughout instead of GetSystemTimeAsFileTime.
	* wincap.h (wincaps::has_precise_system_time): New element.
	* wincap.cc: Implement above element throughout.
2013-06-14 15:41:17 +00:00
Corinna Vinschen 0ff057d5a5 Streamline time/times functionality. Remove last remains of former
Windows 9x compatibility.
	* fhandler_disk_file.cc (fhandler_base::fstat_helper): Drop now unneeded
	casts in calls to_timestruc_t.
	(fhandler_base::utimens_fs): Ditto for timespec_to_filetime.
	* fhandler_proc.cc (format_proc_stat): Ditto for to_time_t.
	* hires.h (class hires_ms): Remove unused member initime_ns.
	Remove declarations for timeGetTime_ns and prime.
	(hires_ms::uptime): Remove.
	* posix_ipc.cc (ipc_cond_timedwait): Ditto for timespec_to_filetime.
	* fhandler_registry.cc (fhandler_registry::fstat): Add cast.
	* resource.cc (fill_rusage): Call NtQueryInformationProcess rather than
	GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME.
	* times.cc: Simplify time handling.  Throughout, use LARGE_INTEGER
	rather than FILETIME to simplify computations.  Throughout use
	{u}int64_t rather than {unsigned} long long.  Drop unneeded casts since
	NSPERSEC is 64 bit anyway.
	(systime_ns): Remove.
	(times): Call NtQuerySystemInformation to fetch boot time.  Call
	NtQueryInformationProcess rather than GetProcessTimes to deal with
	LARGE_INTEGER rather than FILETIME.  Call GetSystemTimeAsFileTime.
	(totimeval): Use constant 1000000 as in other functions.
	(time_t_to_filetime): Remove.
	(to_time_t): Change return type to time_t.
	(time_as_timestruc_t): Rename filetime to systime.
	(time): Ditto. Add cast.
	(hires_ns::nsecs): Fix return type cast.
	(hires_ms::timeGetTime_ns): Remove.
	(hires_ns::prime): Remove.
	(hires_ms::nsecs): Drop call to prime.  Call GetSystemTimeAsFileTime
	directly.  Subtract FACTOR here since it's the only function needing
	to do so.
	(minperiod): Cosmetically change to ULONG.
	(hires_ns::resolution): Fix return type cast.
	(hires_ms::resolution): Simplify, rely on NtQueryTimerResolution.
	* winsup.h: Align time related prototypes to above changes.
2013-06-14 09:09:41 +00:00
Corinna Vinschen ba763af559 * net.cc (gen_old_if_name): New function to generate short interface
names for old pre-1.7 applications.
	(get_ifs): Call gen_old_if_name for said old applications.
2013-06-13 19:37:14 +00:00
Corinna Vinschen f06d6d2886 * posix.sgml (fcntl, flock, lockf): Point to implementation notes. 2013-06-13 12:50:28 +00:00
Corinna Vinschen 0b8722c2db * path.cc (normalize_posix_path): Fix long-standing problem which
allows to access files via ".." using an invalid POSIX path.
2013-06-12 17:45:42 +00:00
Corinna Vinschen bb345ed147 * winver.rc (FileDescription): Remove (R). 2013-06-11 07:46:40 +00:00
Corinna Vinschen 8675d2e301 * sec_auth.cc (get_user_groups): Don't handle ERROR_ACCESS_DENIED as
error.  Explain why.
2013-06-10 15:33:12 +00:00
Christopher Faylor d7e4267f45 clarify entry 2013-06-08 16:55:29 +00:00
Christopher Faylor 62003f180a * exceptions.cc (try_to_debug): Don't use yield() when waiting for another
process.
(sigpacket::setup_handler): Fix long-standing problem where loop could exit
with lock held.
2013-06-08 16:54:41 +00:00
Christopher Faylor 1952976a1b * miscfuncs.cc (yield): Revert (after researching) to calling SleepEx with 0.
We don't want to actually sleep when calling this function.
2013-06-08 16:39:52 +00:00
Christopher Faylor 1eaf9215cb revert accidentally checked in files 2013-06-08 14:42:44 +00:00
Christopher Faylor 5d35299e51 * cygwait.cc (cygwait): Remove lock around sig retrieval since this code is
essentially guarded by thread-specific signal_arrived.
* exceptions.cc (_cygtls::handle_SIGCONT): Simplify.  Eliminate lock/unlock
since code is guarded by signal_arrived.
2013-06-08 14:38:20 +00:00
Corinna Vinschen 2f78d07f49 * winver.rc (LegalCopyright): Belatedly bump to 2013. 2013-06-07 19:07:05 +00:00
Christopher Faylor da6461a4d5 * exceptions.cc (_cygtls::handle_SIGCONT): Reinstate previous behavior but make
sure that yield() isn't called when signal stack is locked.
2013-06-07 17:09:56 +00:00
Christopher Faylor 0f38043d8b * exceptions.cc (exception::handle): Add comment explaining si_addr behavior. 2013-06-07 16:05:12 +00:00
Christopher Faylor 9791177448 * DevNotes: Add entry cgf-000023.
* sigproc.cc (exit_thread): Remove now-unneeded sleep code.
2013-06-07 15:37:11 +00:00
Corinna Vinschen 34ec6f665b * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 21. 2013-06-07 09:21:53 +00:00
Corinna Vinschen 6c860dfd25 * posix.sgml (std-notes): Fix typo. 2013-06-07 08:43:01 +00:00
Corinna Vinschen 000e74dfd5 * fhandler_disk_file.cc (fhandler_disk_file::pread): Skip to non-atomic
code if mandatory locking is used on this descriptor.  Explain why.
	(fhandler_disk_file::pwrite): Ditto.
	* posix.sgml (std-notes): Extend description of file locking.
2013-06-07 08:28:25 +00:00
Corinna Vinschen 8b7f83e68f *** empty log message *** 2013-06-06 15:31:15 +00:00
Corinna Vinschen b3f0fb6baa * exceptions.cc (_cygtls::handle_SIGCONT): Simplify loop waiting for
sig_handle_tty_stop to wake up.  Make sure to unlock before calling
	yield to avoid starvation of sig_handle_tty_stop.  Add comments.
	* miscfuncs.cc (yield): Explain why yield should never be called under
	_cygtls::lock conditions.  Call SleepEx with 1ms timeout.  Explain why.
2013-06-06 15:29:41 +00:00
Corinna Vinschen aa6aee7dd7 * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 20. 2013-06-05 09:37:53 +00:00
Corinna Vinschen 111af357c2 * faq-copyright.xml: Fix link to license.
* faq-using.xml: Ditto.
	* faq-what.xml: Ditto.
2013-06-05 09:36:58 +00:00
Corinna Vinschen 47b7ed597c * faq-programming.xml: Convert url to refer to new flat faq.html file.
* faq-setup.xml: Ditto.
	* faq-using.xml: Ditto.
	* highlights.xml: Ditto.
2013-06-05 07:57:39 +00:00
Corinna Vinschen 338a3e8b15 * new-features.xml (ov-new1.7.19): Revert mandatory locking support to
"preliminary".
2013-06-05 07:23:07 +00:00
Corinna Vinschen 0ec4e9966a *** empty log message *** 2013-06-05 07:21:56 +00:00
Corinna Vinschen c0096b6069 * Makefile.in: Add rule to rebuild Makefile if Makefile.in changes.
Include Makefile.dep last.
	(Makefile.dep): Run xidepend within source dir.  Temporarily drop
	faq.xml from dependencies.
	* xidepend: Fix creating base filename to accommodate VPATH.
2013-06-04 11:50:41 +00:00
Corinna Vinschen a0238d7084 * new-features.xml (ov-new1.7.19): Align mandatory locking text to
today's changes.
2013-06-04 11:14:34 +00:00
Corinna Vinschen edd73646f3 * fhandler.cc (fhandler_base::lock): Move to flock.cc.
(fhandler_base::fixup_after_exec): Reset mandatory_locking.
	* fhandler.h (class fhandler_base): Add mandatory_locking status flag.
	Add mandatory_locking accessor methods.  Accommodate change throughout.
	(fhandler_base::mand_lock): Declare.
	(class fhandler_disk_file): Drop in favor of new status flag.
	* (fhandler_disk_file::fcntl): Call need_fork_fixup if mandatory_locking
	flag gets set.
	* flock.cc (fhandler_base::lock): Define here.
	(flock): Handle mandatory_locking.
	(lockf): Ditto.
	(fhandler_base::mand_lock): Define.
2013-06-04 10:24:43 +00:00
Corinna Vinschen 86c126b6e3 *** empty log message *** 2013-06-03 10:40:41 +00:00
Corinna Vinschen 69154cfd6b * sigproc.cc (exit_thread): Allow to exit the thread while running
global dtors.  Explain why.
2013-06-03 09:48:54 +00:00
Corinna Vinschen 8516b54215 Fix typo 2013-06-02 10:50:57 +00:00
Corinna Vinschen 40cc0986e3 * new-features.xml (ov-new1.7.19): Add mandatory locking. 2013-06-02 10:22:56 +00:00
Corinna Vinschen a24ad2c346 * autoload.cc (CancelSynchronousIo): Define.
* fcntl.cc (fcntl64): Drop handling of locking commands.
	* fhandler.h (class fhandler_disk_file): Add mandatory_locking.
	(fhandler_disk_file::fcntl): Declare.
	(fhandler_disk_file::mand_lock): Declare.
	* fhandler_disk_file.cc (fhandler_disk_file::fhandler_disk_file):
	Initialize mandatory_locking.
	(fhandler_disk_file::fcntl): New method.  Handle F_LCK_MANDATORY and
	locking commands.
	(fhandler_disk_file::dup): Duplicate mandatory_locking.  Fix a bug
	when duplicating prw_handle failed.
	(fhandler_disk_file::fixup_after_fork): Reset mandatory_locking.
	* flock.cc (fhandler_disk_file::lock): Add comment.
	(struct lock_parms): New struct to pass parameters to blocking_lock_thr
	thread function.
	(blocking_lock_thr): New thread function.
	(fhandler_disk_file::mand_lock): New methof implementing mandatory
	locking with Windows semantics.
	* ntdll.h (NtLockFile): Declare.
	(NtUnlockFile): Declare.
	* include/fcntl.h: Fix a comment.
	(F_LCK_MANDATORY): Define.  Add lengthy comment to explain.
2013-06-02 10:22:14 +00:00
Corinna Vinschen fa35814af1 * exceptions.cc (exception::handle): Resurrect accidentally lost
patch from 2009-07-22: Set si_addr according to POSIX for SIGSEGV.
2013-06-02 09:11:09 +00:00
Corinna Vinschen cd9ca871b0 * include/sys/socket.h: Move SHUT_xx definitoins from here...
* include/cygwin/socket.h: ...to here.
2013-05-31 18:08:25 +00:00
Corinna Vinschen 697ce3c45f *** empty log message *** 2013-05-31 08:41:39 +00:00
Corinna Vinschen 9fccd63bc3 * include/cygwin/if.h: Include cygwin/socket.h rather than sys/socket.h
to avoid circular dependency resulting in bogus compile time warnings.
2013-05-31 08:40:35 +00:00
Corinna Vinschen b09e6ec935 * fhandler_procsys.cc (fhandler_procsys::read): Just call
fhandler_base::raw_read from here.  Drop comment.
	(fhandler_procsys::write): Drop comment.
2013-05-28 15:07:01 +00:00
Corinna Vinschen 0dd70ae521 *** empty log message *** 2013-05-27 19:41:54 +00:00
Corinna Vinschen 27a21b38c0 * dll_init.cc (dll_list::topsort): Fix early-return condition to
accommodate process with all runtime loaded DLLs already dlclosed
	at fork time.
	* gendef (_sigfe_maybe): Fix code handling early return if we don't
	have a tls, broken on 2013-05-21.
2013-05-27 19:31:04 +00:00
Corinna Vinschen 7e925d9ac1 *** empty log message *** 2013-05-25 09:00:43 +00:00
Corinna Vinschen 10ce3cd70a * Makefile.in (DEFS): Unused, remove.
(COMPILE.cc): Move -mno-use-libstdc-wrappers flag from here...
	($(TEST_DLL_NAME)): ...to here since it's a link time flag.
2013-05-24 21:12:16 +00:00
Corinna Vinschen 6184e6b9c8 * pinfo.cc (pinfo::status_exit): Enhance comment. 2013-05-24 13:43:26 +00:00
Corinna Vinschen 1a5dfe8ae0 * environ.cc (win_env::add_cache): Set the Windows environment variable
using wide chars to make sure native chars don't get scrambled.
	* environ.h (build_env): Fix formatting in declaration.
	* pinfo.cc (pinfo::status_exit): Handle STATUS_NO_MEMORY.  Explain why.
2013-05-24 13:32:10 +00:00
Corinna Vinschen 592989d65c * fork.cc (frok::parent): Always set CREATE_UNICODE_ENVIRONMENT flag.
Explain why.
2013-05-24 08:43:43 +00:00
Corinna Vinschen 61fb9713c6 * fork.cc (frok::parent): Call CreateProcessW with command line set
to the parent command line.  Change comment to explain why.
2013-05-23 20:47:45 +00:00
Corinna Vinschen c6696a3426 * dcrt0.cc (child_info_fork::alloc_stack_hard_way): Fix datatype of
stacksize to SIZE_T.  Cast to SIZE_T in pointer arithmetic.  Slightly
	enhance output in case of a fatal error.
	* fork.cc (frok::parent): Always set ch.stackaddr to DeallocationStack
	value of current thread to help stack reservation in
	child_info_fork::alloc_stack_hard_way along.  Simplify subsequent code
	storing stack values in ch.  Print guardsize in hex, too.
2013-05-23 20:10:35 +00:00
Warren Young df7a7e2e82 . 2013-05-23 19:03:19 +00:00
Warren Young 42d724c92a Created xidepend mechanism 2013-05-23 19:02:46 +00:00
Corinna Vinschen 6d383d0fde * cygwinenv.xml (cygwinenv-implemented-options): Explain new
winsymliks:nativestrict option.  Strip out description of symlink types
	and refer to new pathnames-symlinks section.
	* highlights.xml (ov-hi-files): Rip out most of symlink description and
	refer to new pathnames-symlinks section instead.
	* new-features.xml (ov-new1.7.19): Add CYGWIN=winsymlinks:nativestrict.
	* pathnames.xml (pathnames-symlinks): New section describing symbolic
	link handling.
2013-05-23 14:26:53 +00:00