2013-02-08 21:15:05 +01:00
|
|
|
2013-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* child_info.h (CURR_CHILD_INFO_MAGIC): Update.
|
|
|
|
(class child_info_fork): Drop extraneous semicolon.
|
|
|
|
|
2013-02-04 13:21:56 +01:00
|
|
|
2013-02-04 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler_socket.cc (fhandler_socket::bind): Fix error code for
|
|
|
|
empty filename.
|
|
|
|
|
2013-02-04 13:04:20 +01:00
|
|
|
2013-02-04 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler_socket.cc (fhandler_socket::bind): Fix length check of
|
|
|
|
AF_LOCAL filename so it never accesses memory beyond namelen. Also
|
|
|
|
make sure filename is NUL-terminated.
|
|
|
|
|
2013-01-31 06:26:47 +01:00
|
|
|
2013-01-31 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* DevNotes: Add entry cgf-000022.
|
|
|
|
* cygtls.h (_cygtls::func): Define as a sa_sigaction style function.
|
|
|
|
* exceptions.cc (sig_handle_tty_stop): Ditto.
|
|
|
|
(_cygtls::interrupt_setup): Fix coercion to accommodate 'func' change.
|
|
|
|
(ctrl_c_handler): Use tty kill_pgrp to send a signal.
|
|
|
|
(sigpacket::process): Don't process sigflush here.
|
|
|
|
(_cygtls::call_signal_handler): Reorganize to avoid a race. Always
|
|
|
|
call sa_sigaction style function.
|
|
|
|
* fhandler_termios.cc (is_flush_sig): Define new function.
|
|
|
|
(tty_min::kill_pgrp): Handle tty flush when signal detected.
|
|
|
|
(fhandler_termios::bg_check): Be slightly more paranoid about checking
|
|
|
|
for valid tty.
|
|
|
|
(fhandler_termios::sigflush): Don't flush unless tty owner.
|
|
|
|
* fhandler_tty.cc (fhandler_pty_slave::ioctl): Use tty kill_pgrp to
|
|
|
|
send signal.
|
|
|
|
(fhandler_pty_master::ioctl): Ditto.
|
|
|
|
* signal.cc (killsys): Delete definition.
|
|
|
|
* sigproc.h (killsys): Delete declaration.
|
|
|
|
* include/cygwin/signal.h (siginfo_t): Simplify union/struct nesting
|
|
|
|
slightly. Implement mechanism to allow cygwin data passing.
|
|
|
|
|
2013-01-23 15:24:34 +01:00
|
|
|
2013-01-23 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* miscfuncs.cc (__import_address): Check if malloc field points
|
|
|
|
directly at 'malloc'.
|
|
|
|
|
2013-01-23 15:06:06 +01:00
|
|
|
2013-01-23 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* miscfuncs.cc (__import_address): On second thought, the chance that
|
|
|
|
this pointer could be NULL is very low so don't bother checking for it.
|
|
|
|
|
2013-01-23 06:27:36 +01:00
|
|
|
2013-01-23 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* exceptions.cc (exception::handle): Make attempt to recursively dump
|
|
|
|
stack fatal.
|
|
|
|
|
2013-01-23 03:06:44 +01:00
|
|
|
2013-01-22 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* miscfuncs.cc (__import_address): Avoid NULL explicitly.
|
|
|
|
|
2013-01-23 03:02:36 +01:00
|
|
|
2013-01-22 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* miscfuncs.cc (__import_address): Avoid treating random instructions
|
|
|
|
as import jump.
|
|
|
|
* malloc_wrapper.cc (malloc_init): Remove comment about 64-bit.
|
|
|
|
|
2013-01-21 18:17:44 +01:00
|
|
|
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* dcrt0.cc (dll_crt0_1): Comment assumption.
|
|
|
|
* exceptions.cc (sigpacket::setup_handler): Avoid sending signals
|
|
|
|
during fork processing.
|
|
|
|
|
2013-01-21 17:56:09 +01:00
|
|
|
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* dcrt0.cc (dll_crt0_1): Flag that we are working "incyg". Handle any
|
|
|
|
signals (presumably exiting signals) which may have come in while we
|
|
|
|
are in the process of setting up.
|
|
|
|
|
2013-01-21 17:20:23 +01:00
|
|
|
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* update-copyright: Recognize configure.ac scripts too.
|
|
|
|
|
2013-01-21 08:42:02 +01:00
|
|
|
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* cygerrno.h (__reg3): Define.
|
|
|
|
* cygmalloc.h (__reg3): Ditto.
|
|
|
|
|
2013-01-21 08:34:07 +01:00
|
|
|
2013-01-21 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* cygerrno.h: Conditionally define __regN for cygserver.
|
|
|
|
|
2013-01-21 05:43:48 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* malloc_wrapper.cc (malloc_init): Re-add inadvertently dropped comment
|
|
|
|
which explains what's going on with the use_internal calculation.
|
|
|
|
|
2013-01-21 05:38:31 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
Throughout, update copyrights to reflect dates which correspond to
|
|
|
|
main-branch checkins. Regularize copyright format.
|
|
|
|
|
2013-01-21 05:34:52 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
Throughout, change __attribute__ ((regparm (N))) to just __regN.
|
|
|
|
Throughout, (mainly in fhandler*) start fixing gcc 4.7.2 mismatch
|
|
|
|
between regparm definitions and declarations.
|
|
|
|
* gendef: Define some functions to take @ declaration to accommodate
|
|
|
|
_regN defines which use __stdcall.
|
|
|
|
* gentls_offsets: Define __regN macros as empty.
|
|
|
|
* autoload.cc (wsock_init): Remove unneeded regparm attribute.
|
|
|
|
* winsup.h (__reg1): Define.
|
|
|
|
(__reg2): Define.
|
|
|
|
(__reg3): Define.
|
|
|
|
|
|
|
|
* advapi32.cc (DuplicateTokenEx): Coerce some initializers to avoid
|
|
|
|
warnings from gcc 4.7.2.
|
|
|
|
* exceptions.cc (status_info): Declare struct to use NTSTATUS.
|
|
|
|
(cygwin_exception::dump_exception): Coerce e->ExceptionCode to
|
|
|
|
NTSTATUS.
|
|
|
|
* fhandler_clipboard.cc (cygnativeformat): Redefine as UINT to avoid
|
|
|
|
gcc 4.7.2 warnings.
|
|
|
|
(fhandler_dev_clipboard::read): Ditto.
|
|
|
|
|
2013-01-21 05:30:27 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* update-copyright (update_maybe): Accommodate perl-style copyright
|
|
|
|
comments.
|
|
|
|
|
2013-01-21 04:55:55 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* update-copyright: Silently skip nonexistent files. Display filename
|
|
|
|
on update. Don't update non-Red Hat copyrights.
|
|
|
|
|
2013-01-21 00:56:26 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* update-copyright: Update standard copyright information based on cvs
|
|
|
|
log and current sandbox status.
|
|
|
|
|
2013-01-20 23:59:58 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* malloc_wrapper.cc: Change 'use_internal_malloc' to 'use_internal'
|
|
|
|
throughout.
|
|
|
|
(export_malloc_called): Delete.
|
|
|
|
(internal_malloc_determined): New variable.
|
|
|
|
(malloc_init): Control calculation of internal/external malloc based on
|
|
|
|
'internal_malloc_determined'. Use import_address() to determine if
|
|
|
|
malloc in user_data is ours or not.
|
|
|
|
* miscfuncs.cc (thread_wrapper): Make static.
|
|
|
|
(__import_address): Define new function.
|
|
|
|
* miscfuncs.h (import_address): New define.
|
|
|
|
(__import_address): Declare new function.
|
|
|
|
|
2013-01-20 07:34:59 +01:00
|
|
|
2013-01-20 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* sigproc.cc (sig_dispatch_pending): Add correct regparm attributes to
|
|
|
|
match declaration.
|
|
|
|
(pid_exists): Ditto.
|
|
|
|
(proc_subproc): Ditto.
|
|
|
|
(sig_clear): Ditto.
|
|
|
|
(sig_send): Ditto.
|
|
|
|
(checkstate): Ditto.
|
|
|
|
|
2013-01-19 15:54:18 +01:00
|
|
|
2013-01-19 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (rename): Remove ill-conceived NFS workaround from
|
|
|
|
2013-01-10 for self-inflicted NFS server problem.
|
|
|
|
|
2013-01-19 06:57:06 +01:00
|
|
|
2013-01-19 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* exceptions.cc (ctrl_c_handler): Remove special-case handler for
|
|
|
|
"cygwin_finished_initializing".
|
|
|
|
* sigproc.cc (exit_thread): Undefine ExitThread earlier to avoid
|
|
|
|
recursion on error return.
|
|
|
|
|
2013-01-18 17:09:51 +01:00
|
|
|
2013-01-18 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* errno.cc (errmap): Map ERROR_LOCK_VIOLATION to EBUSY.
|
|
|
|
|
|
|
|
2013-01-18 Corinna Vinschen <corinna@vinschen.de>
|
2013-01-18 10:35:05 +01:00
|
|
|
|
|
|
|
* mmap.cc (handler_disk_file::msync): Add call to FlushFileBuffers
|
|
|
|
to implement MS_SYNC.
|
|
|
|
|
2013-01-18 01:28:21 +01:00
|
|
|
2013-01-17 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* mmap.cc (handler_disk_file::msync): Retry up to 99 times if
|
|
|
|
FlushViewOFile fails with ERROR_LOCK_VIOLATION.
|
|
|
|
|
2013-01-17 00:04:28 +01:00
|
|
|
2013-01-16 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* sigproc.cc (no_signals_available): Finally remove this macro
|
|
|
|
entirely.
|
|
|
|
(exit_thread): Ensure process lock is released on error exit.
|
|
|
|
(sig_send): Simplify "its_me" test. Remove no_signals_available tests.
|
|
|
|
|
2013-01-16 20:20:59 +01:00
|
|
|
2013-01-16 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* pthread.cc (pthread_exit): Add kludge to accommodate noreturn attribute.
|
|
|
|
|
2013-01-14 22:17:37 +01:00
|
|
|
2013-01-14 Antti Kantee <pooka@iki.fi>
|
|
|
|
|
|
|
|
* include/pthread.h (pthread_exit): Mark as "noreturn".
|
|
|
|
|
2013-01-14 07:03:59 +01:00
|
|
|
2013-01-14 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
2013-01-14 23:24:36 +01:00
|
|
|
* exceptions.cc (signal_exit): Move captive process termination...
|
2013-01-14 07:03:59 +01:00
|
|
|
(_cygtls::interrupt_setup): ...into here.
|
|
|
|
(sigpacket::process): Simplify setting of handler when have_execed.
|
|
|
|
(_cygtls::interrupt_setup): Don't call proc_subproc when we've execed.
|
|
|
|
* globals.cc (exit_states): Delete unneeded ES_EXEC_EXIT.
|
|
|
|
* pinfo.cc (pinfo::exit): Change debugging output. Call proc_terminate
|
|
|
|
rather than the now-obsolete sigproc_terminate. Don't set exit_state
|
|
|
|
to ES_EXEC_EXIT. Set exit_state to ES_FINAL later.
|
|
|
|
* sigproc.cc (sigproc_terminate): Delete function.
|
|
|
|
(wait_sig): Don't call proc_subproc if have_execed.
|
|
|
|
* sigproc.h (sigproc_terminate): Delete declaration.
|
|
|
|
* sync.h (lock_process::lock_process): Don't set exit_state to
|
|
|
|
ES_PROCESS_LOCKED.
|
|
|
|
(lock_process::operator LONG): Define.
|
|
|
|
|
2013-01-11 16:36:40 +01:00
|
|
|
2013-01-11 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* DevNotes: Add entry cgf-000021.
|
|
|
|
* select.cc (select): Unconditionally return when a signal is detected.
|
|
|
|
(select_stuff::wait): Ditto.
|
|
|
|
|
2013-01-11 13:34:41 +01:00
|
|
|
2013-01-11 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (rename): Drop handling paths > 32757 chars, emit EINVAL
|
|
|
|
instead, thus simplifying code allocating and filling pfri. Drop size
|
|
|
|
and use constant expression in NtSetInformationFile call. Add comments.
|
|
|
|
Drop redundant test for fs_serial_number and change comment accordingly.
|
|
|
|
|
2013-01-11 12:04:50 +01:00
|
|
|
2013-01-11 Thomas Wolff <towo@towo.net>
|
|
|
|
|
|
|
|
* fhandler.h (class dev_console): Flag for expanded control sequence.
|
|
|
|
* fhandler_console.cc (char_command): Supporting cursor style modes.
|
|
|
|
|
2013-01-10 16:08:22 +01:00
|
|
|
2013-01-10 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* path.h (path_conv::fs_type): New method.
|
|
|
|
* syscalls.cc (rename): Check for cross-device situation before
|
|
|
|
touching anything. Explain why. Workaround NFS bug in call to
|
|
|
|
NtSetInformationFile(FileRenameInformation).
|
|
|
|
|
2013-01-09 17:25:15 +01:00
|
|
|
2013-01-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygerrno.h: Fix copyright.
|
|
|
|
* exceptions.cc: Drop comment explaining removed variable.
|
|
|
|
|
2013-01-09 15:23:44 +01:00
|
|
|
2013-01-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dcrt0.cc (main_thread_sinit): New inline function. Fix and explain
|
|
|
|
a stdio initialization issue.
|
|
|
|
(dll_crt0_1): Call main_thread_sinit rather than __sinit.
|
|
|
|
|
2013-01-07 20:34:44 +01:00
|
|
|
2013-01-07 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* thread.cc (pthread_rwlock::lookup_reader): Remove parameter: always
|
|
|
|
assume that we're looking for the current thread.
|
|
|
|
(pthread_rwlock::tryrdlock): Eliminate self variable. Accommodate
|
|
|
|
change in lookup_reader().
|
|
|
|
(pthread_rwlock::unlock): Ditto.
|
|
|
|
(pthread_rwlock::rdlock): Ditto. Move add_reader call after writer
|
|
|
|
tests to more closely mimic old behavior.
|
|
|
|
(pthread_rwlock::wrlock): Accommodate change in lookup_reader().
|
|
|
|
* thread.h ((pthread_rwlock::lookup_reader): Eliminate argument.
|
|
|
|
|
2013-01-07 17:01:10 +01:00
|
|
|
2013-01-07 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* thread.cc (pthread_rwlock::add_reader): Perform new operation here
|
|
|
|
and return pointer to allocated RWLOCK_READER structure.
|
|
|
|
(pthread_rwlock::rdlock): Reorganize to reflect new add_reader
|
|
|
|
functionality.
|
|
|
|
(pthread_rwlock::tryrdlock): Ditto. Remove unneeded call to
|
|
|
|
lookup_reader().
|
|
|
|
* thread.h (pthread_rwlock::RWLOCK_READER::RWLOCK_READER): New
|
|
|
|
constructor.
|
|
|
|
(pthread_rwlock::add_reader): Reflect new functionality.
|
|
|
|
|
2013-01-04 03:21:03 +01:00
|
|
|
2013-01-03 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* globals.cc (exit_states): Renumber so that ES_EXIT_STARTING is first,
|
|
|
|
as intended.
|
|
|
|
* sigproc.cc (wait_sig): Only stop accepting signals after
|
|
|
|
exit_state > ES_EXIT_STARTING.
|
|
|
|
|
2013-01-03 06:05:10 +01:00
|
|
|
2013-01-03 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* sigproc.cc (exit_thread): Set thread signal mask so that no signals
|
|
|
|
are sent to an exiting thread.
|
|
|
|
|
2013-01-03 04:33:18 +01:00
|
|
|
2013-01-02 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* sigproc.cc (no_signals_available): Remove exit_state test since
|
|
|
|
signals are available in a limited fashion when exiting.
|
|
|
|
(sig_dispatch_pending): Ditto.
|
|
|
|
(sig_send): Ditto.
|
|
|
|
(exit_thread): Rearrange to avoid an unnecessary DuplicateProcess when
|
|
|
|
exiting.
|
|
|
|
(wait_sig): Allow special signals when exiting.
|
|
|
|
|
2013-01-02 19:46:55 +01:00
|
|
|
2013-01-02 Christopher Faylor <me.cygwin2013@cgf.cx>
|
|
|
|
|
|
|
|
* DevNotes: Add entry cgf-000020, relating to previous checkin.
|
|
|
|
|
|
|
|
2013-01-02 Christopher Faylor <me.cygwin2013@cgf.cx>
|
2013-01-02 19:34:06 +01:00
|
|
|
|
|
|
|
* cygtls.h (_cygtls::signal_exit): Delete from class.
|
|
|
|
* exception.h (cygwin_exception): New class.
|
|
|
|
(cygwin_exception::dumpstack): Declare new function.
|
|
|
|
(cygwin_exception::context): Ditto.
|
|
|
|
(cygwin_exception::dump_exception): Ditto.
|
|
|
|
* exceptions.cc (cygwin_exception::dump_exception): Move into
|
|
|
|
cygwin_exception class. Accommodate new variable names.
|
|
|
|
(cygwin_exception::dumpstack): Ditto stackdump -> dumpstack.
|
|
|
|
(exception::handle): Move andreas processing earlier. Defer signal
|
|
|
|
processing decisions to the signal thread where they belong. Pass
|
|
|
|
exception information to sig_send via new siginfo_t si_cyg field.
|
|
|
|
(ctrl_c_handler): Wait for SIGHUP signal to be processed since it could
|
|
|
|
cause a process exit and we don't want races with thread exit lock.
|
|
|
|
(signal_exit): Move back here from sigproc.cc. Modify arguments and
|
|
|
|
remove from sigpacket class. Decide when to dump core based on signal
|
|
|
|
type.
|
|
|
|
(sigpacket::process): Handle exiting signals in context of threads
|
|
|
|
rather than in the signal thread. Signal debugger on non-Windows
|
|
|
|
signals. Remove setup_signal_exit call.
|
|
|
|
* sigproc.cc (no_signals_available): Remove argument.
|
|
|
|
(signal_exit_code): Delete.
|
|
|
|
(close_my_readsig): Ditto.
|
|
|
|
(_cygtls::signal_exit): Move to exceptions.cc.
|
|
|
|
(sigproc_terminate): Don't attempt to terminate signal thread.
|
|
|
|
(setup_signal_exit): Delete.
|
|
|
|
(exit_thread): Use new si_cyg entry in siginfo_t.
|
|
|
|
(sig_send): Just use empty initializer for si. Accommodate change in
|
|
|
|
no_signals_available argument.
|
|
|
|
(wait_sig): Remove attempt to "go asynchronous" on process exit.
|
|
|
|
Delete __SIGEXIT handling. Don't ever exit.
|
|
|
|
* sigproc.h: Remove __SIGEXIT from signal enum. Renumber.
|
|
|
|
* include/cygwin/signal.h (siginfo_t): Add si_cyg entry.
|