Commit Graph

3964 Commits

Author SHA1 Message Date
Robert Collins e9350b6575 2002-10-17 Robert Collins <rbtcollins@hotmail.com>
* thread.h (pthread_mutex::isGoodInitializerOrBadObject): Declare.
        * thread.cc (pthread_mutex::isGoodInitializerOrBadObject): Implement.
        (pthread_mutex::init): Use isGoodInitializerOrBadObject to avoid
        unneeded SEGV's during debugging.
2002-10-17 08:44:18 +00:00
Robert Collins 841cf30bc3 2002-10-17 Thomas Pfaff <tpfaff@gmx.net>
* thread.cc (verifyable_object_isvalid): Test for static object first.
2002-10-17 08:31:30 +00:00
Danny Smith d7c2dc62fd * include/winuser.h (MONITORINFOEX[AW]): Add structure
definitions and ANSI/UNICODE mappings.
	Cleanup whitespace.
2002-10-16 22:20:34 +00:00
DJ Delorie 6b67d752cc merge from gcc 2002-10-16 13:47:35 +00:00
Christopher Faylor 207daf0f11 * fhandler_tty.cc (fhandler_tty_slave::read): Attempt #527 to properly
implement VMIN/VTIME.
2002-10-16 04:54:08 +00:00
Christopher Faylor 6c6c3b90e9 * shared.cc (open_shared): Revert to "old" method for shared memory location if
!wincap.needs_memory_protection.
* wincap.cc: Implement needs_memory_protection throughout.
* wincap.h: Ditto.
2002-10-15 17:04:20 +00:00
Christopher Faylor fdb28b5e5f * child_info.h (CURR_CHILD_INFO_MAGIC): Reset.
(child_info_fork::mount_table): Remove.
(child_info_fork::myself_addr): Remove.
* fork.cc (fork_child): Don't set either of the above.
* dcrt0.cc (dll_crt0_1): Call memory_init as early as possible.
* fhandler_console.cc (console_state): Move to shared_info.h.
(fhandler_console::get_tty_stuff): Reflect open_shared arg change.
* pinfo.cc (myself_addr): Remove definition.
(pinfo::init): Get myself address from open_shared.
* pinfo.h (myself_addr): Remove declaration.
* shared.cc (open_shared): Rework so that known shared memory locations are
protected.  Take shared memory type as fifth argument.
(memory_init): Reflect open_shared arg change.
* shared_info.h (shared_locations): New enum.
(console_state): Move here.
(open_shared): Reflect open_shared arg change in declaration.
2002-10-15 07:03:45 +00:00
Christopher Faylor 54030e2146 * child_info.h (CURR_CHILD_INFO_MAGIC): Reset.
(child_info_fork::heaptop): Remove obsolete element.
(child_info_fork::heabbase): Ditto.
(child_info_fork::heapptr): Ditto.
(child_info_fork::mount_table): New element.
(child_info_fork::myself_addr): Ditto.
* dcrt0.cc (dll_crt0_1): Set mount_table and myself_addr when forking.
(initial_env): Add newline to "sleeping" message.
* dll_init.cc (reserve_upto): Accommodate cygwin heap when freeing memory.
Make debugging output a little more descriptive.
* fork.cc (fork_parent): Save mount_table and myself_addr.
* pinfo.cc (myself_addr): New variable.
(set_myself): Pass PID_MYSELF flag to init.
(pinfo::Init): Honor PID_MYSELF.  Save address where myself shared memory
resides in myself_addr, for fork.
* pinfo.h (myself_addr): Declare.
* shared.cc (memory_init): On fork, use previously saved address for location
of mount table.
* include/sys/cygwin.h (PID_MYSELF): New value.
* dtable.cc (dtable::stdio_init): Don't pass access type to
init_std_file_from_handle.  It's always the same.
(dtable::init_std_file_from_handle): Remove access type argument.  Assume
read/write.
* dtable.h (dtable::init_std_file_from_handle): Ditto for declaration.
* exceptions.cc (try_to_debug): Don't try to debug if already being debugged.
* fhandler_console.cc (shared_console_info_save): New variable.
(fhandler_console::get_tty_stuff): Save address of shared console stuff for
fork.
2002-10-14 20:25:52 +00:00
Earnie Boyd c14ae835c5 * Makefile.in: Add components for lib/ddk. Adjust for autoconf-2.53.
* configure.in: Ditto.
	* lib/Makefile.in: Ditto.
	* lib/ddk/Makefile.in: Correct installation procedure.  Adjust for
	autoconf-2.53.
	* configure: Regenerate.
2002-10-14 19:59:04 +00:00
Alan Modra ad1d049af9 * cgen.h: Test __BFD_H_SEEN__ rather than BFD_VERSION_DATE. 2002-10-14 10:55:14 +00:00
Christopher Faylor 969203ce91 * cygthread.cc (cygthread::stub): Reintroduce clearing of __name but do it
before SetEvent to eliminate a race.
(cygthread::terminate): Accumulate list of threads to check for termination and
call WaitForMultipleObjects on list rather than waiting for each thread
individually.
* sigproc.cc (subproc_init): Zap hwait_subproc thread handle since it is no
longer used.
* spawn.cc (spawn_guts): Fix so that cygthread::terminate is *really* called
only for exec.
2002-10-14 03:51:44 +00:00
Christopher Faylor a7a5d0ba37 * cygthread.cc (cygthread::stub): Don't zero __name here. That introduces a
race.
2002-10-14 02:37:49 +00:00
Danny Smith 5c2b46f4a8 * include/windows.h: Don't include basetyps.h.
* include/objfwd.h: Do include basetyps.h.
2002-10-14 02:12:51 +00:00
Christopher Faylor bac610ad86 * include/cygwin/version.h: Bump DLL minor number. 2002-10-14 00:06:33 +00:00
Christopher Faylor 3f5046a540 * cygthread.cc (cygthread::stub): Don't create event for long-running threads.
Initialize thread_sync event here which is used to Suspend using an event
rather than relying on SuspendThread/ResumeThread.
(cygthread::init): Save handle to runner thread for future termination.
(cygthread::cygthread): Only resume thread when it is actually suspended.
Otherwise signal thread completion event.
(cygthread::terminate): Forcibly terminate runner thread and any helper
threads.  Call DisableThreadLibrary calls if execing.
* cygthread.h (cygthread::thread_sync): Declare.
* dcrt0.cc (do_exit): Eliminate calls to obsolete window_terminate and
shared_terminate.
* exceptions.cc (events_terminate): Don't bother closing title_mutex since it
is going away anyway.
* pinfo.cc (_pinfo::exit): Call cygthread::terminate to ensure that threads are
shut down before process exit or otherwise strange races seem to occur.
* shared.cc (shared_terminate): Eliminate.
* shared.h (shared_terminate): Eliminate declaration.
* winsup.h (window_terminate): Eliminate declaration.
* spawn.cc (spawn_guts): Call cygthread::terminate early in process if execing.
Call DisableThreadLibrary calls if execing.
* window.cc (Winmain): Call ExitThread to force exit.
(window_terminate): Eliminate.
* dcrt0.cc (do_exit): Track exit state more closely.
2002-10-13 18:16:33 +00:00
Danny Smith 5cafa3aa1a * include/objbase.h: Include rpc.h and rpcndr.h
before header guard.
2002-10-13 03:11:58 +00:00
Kaz Kojima 95a962432f * sh.h: Add SH TLS relocs. 2002-10-11 14:36:03 +00:00
Richard Sandiford ccdae54335 Fix attribution. (Tsk, tsk. Force of habit, sorry.) 2002-10-11 10:30:49 +00:00
Richard Sandiford f770cf44c3 * libc/include/sys/config.h (SIZE_T_SMALLER_THAN_LONG): Undefine.
* libc/stdlib/mallocr.c (long_sub_size_t): Define in a way that
	doesn't require the SIZE_T_SMALLER_THAN_LONG macro.
2002-10-11 10:28:30 +00:00
Danny Smith afc65aebbd * include/olectl.h (PROPPAGEINFO): Change type of
field cb to ULONG.
2002-10-11 03:40:06 +00:00
Danny Smith b04b30b914 2002-10-11 Steven Edwards <Steven_Ed4153@yahoo.com>
* lib/ntdll.def (RtlAcquireResourceExclusive,
	RtlAcquireResourceShared, RtlDeleteResource,
	RtlInitializeResource, RtlReleaseResource,
	RtlTimeToSecondsSince1970) : Added missing exports.
	* include/olectl.h (PROPPAGEINFO): Change type of
	field cb to ULONG.
2002-10-11 03:38:14 +00:00
Danny Smith 798a4740d7 * include/stdint.h (INT64_C, UINT64_C ): Append suffix to let
macros work with C89.
	(INTMAX_C, UINTMAX_C): Likewise.
2002-10-11 02:21:56 +00:00
Danny Smith f98e630084 * include/string.h (strcasecmp): Make extern __inline__.
(strncasecmp): Likewise.
	(wcscmpi): Likewise.
2002-10-11 01:41:31 +00:00
Christopher Faylor b01ff453d9 * window.cc (gethwnd): Use SetThreadPriority method. 2002-10-10 05:31:43 +00:00
Christopher Faylor 2a3bf3e2ce * Makefile.in (new-cygwin1.dll): Reorganize library order.
* dcrt0.cc (do_exit): Move thread stuff after vfork stuff or threads are
terminated during vfork.
* sigproc.cc (proc_terminate): Grab proc lock prior to signalling subproc
thread exit to avoid an extra "wait-for-thread-to-exit".
2002-10-10 05:23:23 +00:00
Christopher Faylor c4ec64d76b * cygthread.cc (cygthread::stub): Don't create an event for "cygself" threads.
Assume that they exit via an ExitThread call.
* cygthread.h (cygthread::SetThreadPriority): New function.
(cygthread::zap_h): New function.
* dcrt0.cc (do_exit): Move cygthread::terminate earlier and establish
exit_state guard.
* fhandler.h (fhandler_tty_master::output_thread): Delete.
* fhandler_tty.cc (fhandler_tty_master::init): Set priority for threads via
method.  Zap handles when done.  Don't treat process_output specially.
(process_output): Call ExitThread directly.
(fhandler_tty_master::fixup_after_fork): Don't worry about output_thread.
(fhandler_tty_master::fixup_after_exec): Ditto.
* sigproc.cc (proc_terminate): Don't detach from hwait_subproc.  Just let it
exit.
(sigproc_init): Close thread handle after initialization.
(wait_sig): Use GetCurrentThread() as SetThreadPriority call rather than
*event* handle.  Call ExitThread directly on termination.
(wait_subproc): Call ExitThread directly on termination.
* tty.cc (tty_list::terminate): Don't attempt t detach from output_thread.
2002-10-09 05:55:40 +00:00
Christopher Faylor 7da53596cf * cygheap.cc (dup_now): Make fatal error a little more informative.
(cygheap_setup_for_child): Detect when default size of shared region is less
than the current size and allocate that much.
(_cbrk): Just return NULL on inability to allocate.
(_cmalloc): Ditto.
* cygheap.h (CYGHEAPSIZE): Change size to reflect newer, tinier fhandler sizes.
* spawn.cc (av::error): New element, reflects potential errno from cmalloc.
(av::~av): Don't free NULL pointers.
(av::replace0_maybe): Detect out-of-memory conditions.
(av::dup_maybe): Ditto.
(av::dup_all): Ditto.
(av::unshift): Ditto.
(spawn_guts): Set errno and return if argv creation ran into problems.
* fhandler.h (fhandler_union): Change member names to something safer.
* fhandler_console.cc (fhandler_console::get_tty_stuff): Always set
fhandler_console::dev_state regardless of whether shared region is initialized.
* cygthread.cc (cygthread::runner): Use ExitThread rather than return
(planning for future).
2002-10-09 04:08:05 +00:00
Danny Smith ce6ac4003f 2002-10-08 Heiko Gerdau <hg@technosis.de>
* include/oleacc.h: New file.
	* include/winuser.h (ENDSESSION_LOGOFF) Add define.
	(OBJID_*) Add defines.
	* lib/uuid.c: Add DEFINE_GUID for IID_IAccessible.
	* lib/test.c: Include oleacc.h.
2002-10-09 00:16:22 +00:00
Danny Smith 32fef334cd 2002-10-08 Heiko Gerdau <hg@technosis.de>
* include/tchar.h (_tchdir. _tgetcwd, _tgetdcwd.
	_tmkdir, _trmdir, _tstat): Add ASCII and UNICODE
	mappings.
2002-10-08 20:28:14 +00:00
Joel Sherrill 7397211686 2002-10-07 Joel Sherrill <joel@OARcorp.com>
* libc/sys/rtems/crt0.c: Add even more symbols so gcc() can link
	dummy programs.
2002-10-08 13:09:05 +00:00
Joel Sherrill 89e3fcba70 2002-10-07 Joel Sherrill <joel@OARcorp.com>
* libc/include/pthread.h: Define PTHREAD_CANCELED.
2002-10-08 13:03:07 +00:00
Joel Sherrill 54ec52e4a4 2002-10-07 Joel Sherrill <joel@OARcorp.com>
* libc/machine/hppa/DEFS.h, libc/machine/hppa/pcc_prefix.s,
	libc/machine/hppa/setjmp.S, libc/machine/hppa/DEFS.h: Make this
	compile with current GNU tools.
2002-10-08 13:01:02 +00:00
Christopher Faylor 3c66c0707c * fhandler.h (dev_console): New class.
(fhandler_console::dev_state): New class element.
(fhandler_console::mouse_aware): Use dev_state element.
(fhandler_console::get_tty_stuff): Declare new function.
* fhandler_console.cc: Use dev_state fhandler_console element, throughout.
(fhandler_console::get_tty_stuff): Move to fhandler_console class.  Incorporate
dev_console information.  Move constructor stuff here.
2002-10-08 06:16:16 +00:00
Christopher Faylor 9655ff2680 * dtable.cc (dtable::init_std_file_from_handle): Try to mimic standard open
behavior with files redirected from stdin/stdout/stderr, i.e., fmode settings
take precedence over mount settings.
2002-10-08 02:44:35 +00:00
Jeff Johnston d389acbabf 2002-10-07 Jeff Johnston <jjohnstn@redhat.com>
* Makefile.am: Add EXTRA_DIRS to allow future dependencies on
        the build library.
        * configure.in: Ditto.
        * Makefile.in: Regenerated.
        * configure: Ditto.
        * libc/sys/linux/Makefile.am: Add EXTRA_SUBDIRS and EXTRA_SUBLIBS
        for specifying configured libraries/directories.
        * libc/sys/linux/configure.in: Ditto.
        * libc/sys/linux/Makefile.in: Regenerated.
        * libc/sys/linux/configure: Ditto.
2002-10-07 23:10:13 +00:00
Christopher Faylor dd76747b8e * dtable.cc (unknown_file): New variable.
(dtable::init_std_file_from_handle): Don't set binmode if we couldn't determine
the actual file name on stdin/stdout/stderr.
(handle_to_fn): Return unknown_file when can't determine filename.
2002-10-07 20:06:16 +00:00
Nick Clifton 0709b9ba16 Add tic4x target. 2002-10-07 16:40:56 +00:00
Richard Sandiford c50e457724 * mips/ddb.ld: KEEP .init and .fini.
* mips/ddb-kseg0.ld: Likewise.
2002-10-07 16:24:00 +00:00
Christopher Faylor bc63ea872c * dcrt0.cc (do_exit): Call DisableThreadLibraryCalls since we don't need to
track thread detaches.
* init.cc (dll_entry): Reorganize slightly.  Fix api_fatal message.
2002-10-07 04:12:54 +00:00
Danny Smith 66451d9590 * mingwex/math/powil.c: Rename powil to __powil.
* mingwex/math/powl.c: Adjust declaration and call
	to __powil. Remove comment on powil.
	* mingwex/math/powi.c: New file.
	* mingwex/math/powif.c: New file.
	* mingwex/math/pow.c: New file.
	* mingwex/math/cephes_mconf.h. Add double and float
	versions of constants.
	(polevl): Add double precision function.
	(p1evl): Likewise.
	* mingwex/Makefile.in (MATH_DISTFILES): Add pow.c,
	powi.c, powif.c.
	(MATH_OBJS): Add pow.o,	powi.o, powif.o.
2002-10-06 23:26:43 +00:00
Earnie Boyd 2bacbfb1d1 2002-10-06 Casper Hornstrup <chorns@it.dk>
* include/ddk: New subdir.
	* lib/ddk: Ditto.
	* include/ddk/(atm.h, batclass.h, cfg.h, cfgmgr32.h, d4drvif.h,
	d4iface.h, ddkmapi.h, hidclass.h, hidpi.h, hidusage.h, mcd.h,
	miniport.h, minitape.h, mountdev.h, mountmgr.h, ndis.h,
	ndisquid.h, ndistapi.h, ndisvan.h, netevent.h, netpnp.h,
	netdev.h, ntapi.h, ntdd8042.h, ntddbeep.h, ntddcdrm.h,
	ntddcdvd.h, ntddchgr.h, ntdddisk.h, ntddk.h, ntddkbd.h,
	ntddmou.h, ntddndis.h, ntddpar.h, ntddpcm.h, ntddscsi.h,
	ntddser.h, ntddstor.h, ntddtape.h, ntddtdi.h, ntddvdeo.h,
	ntddvol.h, ntifs.h, ntpoapi.h, ntstatus.h, parallel.h, pfhook.h,
	poclass.h, scsi.h, scsiscan.h, scsiwmi.h, smbus.h, srb.h,
	storport.h, tdi.h, tdiinfo.h, tdikrnl.h, tdistat.h, tvout.h,
	upssvc.h, usb.h, usb100.h, usbcamdi.h, usbdi.h, usbioctl.h,
	usbiodef.h, usbscan.h, usbuser.h, video.h, videoagp.h, win2k.h,
	winddi.h, winddk.h, winnt4.h, winxp.h, ws2san.h,
	xfilter.h): New files.
	* lib/ddk/(Makefile.in, apcups.def, cfgmgr32.def, dxapi.def,
	hal.def, hid.def, hidparse.def, mcd.def, ndis.def, ntoskrnl.def,
	scsiport.def, tdi.def, usbcamd.def, usbcamd2.def, videoprt.def,
	win32k.def): Ditto.
2002-10-06 22:18:26 +00:00
Christopher Faylor 09663d31bb * cygthread.cc (cygthread::stub): Very minor cleanup.
(cygthread::stub): Report overflows in cygwin thread pool when DEBUGGING is on
and special environment variable is not set.
(cygthread::terminate): Set event only when event actually exists.
* exceptions.cc (signal_exit): Set priority of main thread to low before
setting current thread to high.
2002-10-06 01:01:58 +00:00
Christopher Faylor f8f63f9bc1 whitespace 2002-10-05 17:47:25 +00:00
Danny Smith b63ad95b8d 2002-10-04 Steven Edwards <Steven_Ed4153@yahoo.com>
* lib/ntdll.def (NtAccessCheck, NtAdjustPrivilegesToken,
	NtCreateKey, NtDeleteKey, NtDeleteValueKey, NtEnumerateKey,
	NtEnumerateValueKey, NtOpenKey, NtOpenProcessToken,
	NtOpenThreadToken, NtQueryInformationToken, NtQueryKey,
	NtQueryValueKey, NtSetSecurityObject, NtSetValueKey,
	RtlAddAccessAllowedAce, RtlCreateAcl,
	RtlCreateSecurityDescriptor, RtlCreateUnicodeStringFromAsciiz,
	RtlGetAce, RtlGetControlSecurityDescriptor,
	RtlGetDaclSecurityDescriptor,RtlGetGroupSecurityDescriptor,
	RtlGetOwnerSecurityDescriptor,RtlGetSaclSecurityDescriptor,
	RtlImpersonateSelf, RtlIsTextUnicode, RtlLargeIntegerAdd,
	RtlLengthSecurityDescriptor, RtlMakeSelfRelativeSD,
	RtlMultiByteToUnicodeN RtlMultiByteToUnicodeSize,
	RtlOpenCurrentUser, RtlSetDaclSecurityDescriptor,
	RtlSetGroupSecurityDescriptor, RtlSetOwnerSecurityDescriptor,
	RtlSetSaclSecurityDescriptor, RtlValidSecurityDescriptor,
	ZwAccessCheck, ZwAdjustPrivilegesToken, ZwCreateKey,
	ZwDeleteValueKey, ZwEnumerateKey, ZwEnumerateValueKey,
	ZwOpenKey, ZwOpenProcessToken, ZwOpenThreadToken,
	ZwQueryInformationToken, ZwQueryKey, ZwQueryValueKey
	ZwSetSecurityObject, ZwSetValueKey): Added missing exports.

ChangeLog whitespace cleanup.
2002-10-04 04:39:26 +00:00
Danny Smith d905b7d0ce 2002-10-04 "KJK::Hyperion" <noog@libero.it>
*include/windef.h (WPARAM): Update typedef.
	(LPARAM): Ditto.
	(LRESULT): Ditto.
2002-10-04 04:25:00 +00:00
Danny Smith 6930d6cdd0 2002-10-04 "KJK::Hyperion" <noog@libero.it>
* include/shlobj.h (CSIDL_*): Add defines.
2002-10-04 04:18:55 +00:00
Jeff Johnston af5a221f60 2002-10-03 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/reent.h: Update documentation at start of file.
2002-10-03 19:33:08 +00:00
Nathanael Nerode 8c8150d4c9 2002-10-03 Nathanael Nerode <neroden@gcc.gnu.org>
* Makefile.tpl: Make SET_LIB_PATH substitution more autoconfy.
	* Makefile.tpl: Make RPATH_ENVVAR substitution more autoconfy.
	* configure.in: Make SET_LIB_PATH substitution more autoconfy.
	* configure.in: Make RPATH_ENVVAR substitution more autoconfy.
	* Makefile.in: Regenerate.
2002-10-03 19:08:53 +00:00
Danny Smith 3073f3f29d * include/cytpe.h (_imp____mbcur_max): Add missing ';'.
(_imp____mbcur_max_dll): Likewise.
2002-10-03 00:51:25 +00:00
Danny Smith 7c3de623b6 * include/fcntl.h (_fmode): Remove declarations and
compatibility defines.
	(_setmode, setmode): Remove prototypes.
	* include/stdlib (_fmode): Add declarations and
	compatibility defines.  Change type to int.
	* include/io.h (_setmode, setmode): Add prototypes.
	* samples/fmode/all.c: Adjust includes.
	* samples/fmode/test.c: Likewise.
	* crt1.c (_CRT_fmode): Declare as int.
	* CRTfmode.c (_CRT_fmode): Likewise.

	* include/stdlib: Remove comment about MB_CUR_MAX.
2002-10-03 00:49:21 +00:00