2012-02-01 Christopher Faylor * fhandler.cc (fhandler_base_overlapped::has_ongoing_io): Don't block GetOverlappedResult since previous IsEventSignalled will have reset the handle. * select.cc (cygwin_select): Remove space before parentheses in syscall debugging output. (pipe_data_available): Streamline if block. 2012-01-31 Christopher Faylor * syscalls.cc (dup3): Fix debug typo. * fhandler.cc (flush_async_io): Assume only called for writer. Call GetOverlappedResult directly rather than kludging call to has_ongoing_io. (fhandler_base_overlapped::close): Only start flush thread when closing write handle. Only cancel I/O when reading. 2012-01-28 Corinna Vinschen * cygwin.din: Fix order (DATA first). 2012-01-27 Corinna Vinschen * dcrt0.cc (is_dos_path): New macro to recognize drive letter and UNC DOS paths. (globify): Call is_dos_path instead of isdrive. 2012-01-26 Christopher Faylor * sigproc.cc (child_info::retry_count): Default to 1. 2012-01-23 Corinna Vinschen * syscalls.cc (gethostid): Simplify. Just fetch MachineGuid and create hash from there. 2012-01-22 Christopher Faylor * fhandler.h (fhandler_fifo::arm): Declare new function. * fhandler_fifo.cc (fhandler_fifo::arm): Define new function. (fhandler_fifo::open): Fix handling of RDWR pipes to avoid opening a second handle. Use arm() function to set events. (fhandler_fifo::raw_read): Correctly go into "connect again logic" when we detect another writer is available. Use arm() function to set event. * pipe.cc (fhandler_pipe::create): Add more detail to debugging output. 2012-01-22 Christopher Faylor * cygheap.h (cygheap_fdmanip::release): Simplify. * dtable.cc (dtable::release): Make void again. Skip not_open check since it is guaranteed to be open. Don't bother deleting here since actual deletion will be handled in cygheap_fdget::~cygheap_fdget. * dtable.h (dtable::release): Make void again. * syscalls.cc (dup2): Bump fhandler use count on successful dup. 2012-01-22 Christopher Faylor * cygheap.h (cygheap_fdget::~cygheap_fdget): Simplify now that refcnt reports reference count changes itself. * fhandler.cc (fhandler_base::reset): Set _refcnt to 0. * fhandler.h (fhandler_base::refcnt): Report refcnt when debugging. * select.cc (cygwin_select): Set return_on_signal to indicate when select should be interrupted. (select_stuff::wait): Keep looping unless return_on_signal is set. * select.h (select_stuff::return_on_signal): New variable. (select_stuff::select_stuff): Zero return_on_signal. 2012-01-20 Corinna Vinschen * fhandler.h (fhandler_registry::opendir): Declare. * fhandler_registry.cc (fhandler_registry::opendir): New function. 2012-01-13 Yaakov Selkowitz * include/cygwin/config.h (_GLIBC_EXTENSION): Define. 2012-01-11 Christopher Faylor * spawn.cc (child_info_spawn::worker): Delete debugging. 2012-01-11 Christopher Faylor Update copyright on all files checked in so far this year. * fhandler.h: Use #pragma once rather than ifdef guards. (fhandler_console::tc_getpgid): Return our pgid if we have never opened a console. * fork.cc: Rearrange includes to accommodate fhandler.h use of pinfo.h. * sigproc.cc: Ditto. * spawn.cc: Ditto. (child_info_spawn::worker): Query myself->pgid rather than calling expensive function. * thread.h: Use #pragma once rather than ifdef guards. * pinfo.h: Use #pragma once rather than ifdef guards. (pinfo::remember): Don't define if sigproc.h has not been included. (pinfo::reattach): Ditto. * sigproc.h: Use #pragma once rather than ifdef guards. Use different test to see if pinfo.h has been included. 2012-01-09 Corinna Vinschen * include/cygwin/process.h: Move here from newlib. * exec.cc: Change include of process.h to reflect the fact that it's now in the include/cygwin subfolder. * spawn.cc: Ditto. * syscalls.cc: Ditto. 2012-01-09 Corinna Vinschen * miscfuncs.cc (thread_wrapper): Make sure stack is 16 byte aligned to make gcc-3 compiled pthread applications happy. 2012-01-08 Christopher Faylor * dtable.cc (dtable::stdio_init): Always initialize console when we have one. * fhandler_termios.cc (fhandler_termios::tcsetpgrp): Use a better method to print tty name for debugging. (fhandler_termios::bg_check): Ditto. * pinfo.cc (_pinfo::set_ctty): Remove leftover debugging stuff. Simplify behavior when setting tty's sid and pgid to avoid overwriting previously set values. * spawn.cc (ch_spawn): Cosmetic change. 2012-01-06 Yaakov Selkowitz * cygwin.din (pthread_sigqueue): Export. * posix.sgml (std-gnu): Add pthread_sigqueue. * thread.cc (pthread_sigqueue): New function. * thread.h (pthread_sigqueue): New function. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump. 2012-01-02 Christopher Faylor * path.cc (get_current_dir_name): Avoid memory leak. Don't return PWD contents if directory doesn't actually exist. 2012-01-01 Yaakov Selkowitz * cygwin.din (get_current_dir_name): Export. * path.cc (get_current_dir_name): New function. * posix.sgml (std-gnu): Add get_current_dir_name. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.