2012-02-09 15:41:21 +01:00
|
|
|
2012-02-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dll_init.h (struct dll): Re-add modname.
|
|
|
|
* dll_init.cc: Throughout, use modname where it was used before.
|
|
|
|
(dll_list::operator[]): Use modname. Move comment from dll_list::alloc
|
|
|
|
here and remove hint about GetModuleBaseNameW.
|
|
|
|
(dll_list::alloc): Store full path in name, pointer to basename in
|
|
|
|
modname. Search dll using modname.
|
|
|
|
|
2012-02-09 02:20:55 +01:00
|
|
|
2012-02-08 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::init_std_file_from_handle): Reinstate opening tty
|
|
|
|
handles with O_RDWR permissions.
|
|
|
|
|
2012-02-08 20:58:37 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* thread.cc (__pthread_cond_wait_init): New static function replacing
|
|
|
|
__pthread_cond_dowait. Only check and potentially initialize cond and
|
|
|
|
mutex, drop call to (*cond)->wait.
|
|
|
|
(pthread_cond_timedwait): Replace call to __pthread_cond_dowait with
|
|
|
|
separate calls to __pthread_cond_wait_init and (*cond)->wait to be
|
|
|
|
able to initialize cond before accessing its clock_id member.
|
|
|
|
(pthread_cond_wait): Ditto (more or less).
|
|
|
|
|
2012-02-08 20:51:13 +01:00
|
|
|
2012-02-08 Christian Franke <franke@computer.org>
|
|
|
|
|
|
|
|
* include/sys/wait.h: Remove C++ inline functions for `union wait'.
|
|
|
|
For C++ use `void *' as __wait_status_ptr_t instead. This is less type
|
|
|
|
safe but fixes compile error on `wait(NULL)'. Remove extra `;'.
|
|
|
|
|
2012-02-08 20:43:14 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* sigproc.cc (child_info_fork::abort): Call TerminateProcess rather
|
|
|
|
than ExitProcess.
|
|
|
|
|
2012-02-08 18:51:34 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* uinfo.cc (cygheap_user::env_userprofile): Simplify since network
|
|
|
|
drives are not supported here.
|
|
|
|
|
2012-02-08 18:45:43 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* uinfo.cc (cygheap_user::env_userprofile): Convert native
|
|
|
|
userprofile path returned from get_registry_hive_path to Win32 path.
|
|
|
|
|
2012-02-08 18:35:02 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dll_init.cc: Throughout, drop usage of modname in favor of name.
|
|
|
|
(dll_list::find_by_modname): Remove.
|
|
|
|
(dll_list::alloc): Only store module basename in name. Add comment to
|
|
|
|
explain why. Simplify address check. Fix formatting in comment.
|
|
|
|
* dll_init.h (struct dll): Drop modname and find_by_modname.
|
|
|
|
|
2012-02-08 15:41:51 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* dll_init.cc (dll_list::alloc): Add DLL name to fabort output. Fix
|
|
|
|
fabort string in case of bss start.
|
|
|
|
|
2012-02-08 15:08:58 +01:00
|
|
|
2012-02-08 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/sys/sysmacros.h: Include sys/types.h.
|
|
|
|
|
2012-02-07 18:34:29 +01:00
|
|
|
2012-02-07 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* mount.cc (mount_info::create_root_entry): Fix format specifier in
|
|
|
|
api_fatal message.
|
|
|
|
|
2012-02-07 18:15:07 +01:00
|
|
|
2012-02-07 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* include/process.h: Move here from include/cygwin subdir.
|
|
|
|
* exec.cc: Change include of process.h to reflect the fact that it's
|
|
|
|
now back in include.
|
|
|
|
* spawn.cc: Ditto.
|
|
|
|
* syscalls.cc: Ditto.
|
|
|
|
|
2012-02-07 17:54:14 +01:00
|
|
|
2012-02-07 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* cygheap.cc (init_cygheap::manage_console_count): Delete.
|
|
|
|
* cygheap.h (init_cygheap::manage_console_count): Ditto.
|
|
|
|
(init_cygheap::console_count): Ditto.
|
|
|
|
* fhandler.h (fhandler_console::has_a): Ditto.
|
|
|
|
(fhandler_console::free_console): Declare new function.
|
|
|
|
* fhandler_console.cc (fhandler_console::free_console): Define new
|
|
|
|
function.
|
|
|
|
(fhandler_console::open_setup): Delete call to manage_console_count.
|
|
|
|
(fhandler_console::close): Ditto. Replace with call to free_console().
|
|
|
|
* fhandler_tty.cc (fhandler_pty_slave::open): Delete call to
|
|
|
|
manage_console_count.
|
|
|
|
(fhandler_pty_slave::cleanup): Ditto.
|
|
|
|
(fhandler_pty_slave::close): Call fhandler_console::free_console() if
|
|
|
|
this is our controlling tty.
|
|
|
|
* pinfo.cc (_pinfo::set_ctty): Skip function if tty in question == our
|
|
|
|
ctty. Delete call to manage_console_count.
|
|
|
|
|
|
|
|
* syscalls.cc (close_all_files): Avoid locking and avoid setting errno
|
|
|
|
when iterating over fds.
|
|
|
|
|
2012-02-07 17:50:19 +01:00
|
|
|
2012-02-07 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* include/cygwin/version.h: Bump CYGWIN_VERSION_DLL_MINOR to 11.
|
|
|
|
|
2012-02-03 13:26:08 +01:00
|
|
|
2012-02-03 Václav Zeman <vhaisman@gmail.com>
|
|
|
|
|
|
|
|
* grp.cc (pwdgrp::parse_group): Convert grp from macro to reference.
|
|
|
|
* passwd.cc (pwdgrp::parse_passwd): Ditto for res.
|
|
|
|
|
2012-02-02 17:58:13 +01:00
|
|
|
2012-02-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* syscalls.cc (close_all_files): Use cygheap_fdget to manipulate
|
|
|
|
fhandler. Use debug_only_printf.
|
|
|
|
|
2012-02-02 14:58:20 +01:00
|
|
|
2012-02-02 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
Fix memory and handle leaks due to fdopendir:
|
|
|
|
* dir.cc (closedir): Call global close instead of just releasing the
|
|
|
|
fhandler.
|
|
|
|
* fhandler_disk_file.cc (fhandler_disk_file::closedir): Don't close
|
|
|
|
fhandler handle here, rely on global closedir doing the right thing.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::readdir): Also delete
|
|
|
|
d_hash when closing registry key.
|
|
|
|
(fhandler_registry::rewinddir): Ditto.
|
|
|
|
|
|
|
|
Avoid infinite recursion in VirtualStore under UAC:
|
|
|
|
* fhandler_registry.cc (VIRT_CLASSES_KEY_PREFIX): Define.
|
|
|
|
(VIRT_CLASSES_KEY_SUFFIX): Ditto.
|
|
|
|
(VIRT_CLASSES_KEY): Ditto.
|
|
|
|
(VIRT_CLASSES_LINKTGT): Ditto.
|
|
|
|
(fhandler_registry::exists): Return virt_symlink as file type if
|
|
|
|
this is a Classes key under the VirtualStore.
|
|
|
|
(fhandler_registry::fstat): Handle virt_symlink.
|
|
|
|
(fhandler_registry::readdir): Return DT_LNK as d_type if this is a
|
|
|
|
Classes key under the VirtualStore.
|
|
|
|
(fhandler_registry::fill_filebuf): Handle Classes symlink.
|
|
|
|
|
|
|
|
Handle user impersonation in /proc/registry access:
|
|
|
|
* autoload.cc (RegOpenUserClassesRoot): Define.
|
|
|
|
(RegOpenCurrentUser): Define.
|
|
|
|
* fhandler_registry.cc (RegOpenUserClassesRoot): Declare function
|
|
|
|
missing in w32api.
|
|
|
|
(RegOpenCurrentUser): Ditto.
|
|
|
|
(fetch_hkey): New function.
|
|
|
|
(fhandler_registry::open): Call fetch_hkey to get root registry key.
|
|
|
|
(open_key): Ditto.
|
|
|
|
|
2012-02-01 18:38:07 +01:00
|
|
|
2012-02-01 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* fcntl.cc (fcntl64): Add introductory debug statement. Call dup3
|
2012-02-01 19:28:34 +01:00
|
|
|
directly via dtable method to avoid over-incrementing refcnt.
|
2012-02-01 18:38:07 +01:00
|
|
|
|
2012-02-01 18:20:02 +01:00
|
|
|
2012-02-01 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* dtable.cc (dtable::dup_worker): Add comment explaining why refcnt
|
|
|
|
isn't incremented here.
|
|
|
|
(dtable::dup3): Simplify slightly. Add comment.
|
|
|
|
* syscalls.cc (dup3): Increment refcnt here, similarly to dup2.
|
|
|
|
|
2012-02-01 06:27:42 +01:00
|
|
|
2012-02-01 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* 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-02-01 00:52:52 +01:00
|
|
|
2012-01-31 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* syscalls.cc (dup3): Fix debug typo.
|
|
|
|
|
|
|
|
* fhandler.cc (flush_async_io): Assume only called for writer. Call
|
2012-02-01 06:43:30 +01:00
|
|
|
GetOverlappedResult directly rather than kludging call to
|
2012-02-01 00:52:52 +01:00
|
|
|
has_ongoing_io.
|
|
|
|
(fhandler_base_overlapped::close): Only start flush thread when closing
|
|
|
|
write handle. Only cancel I/O when reading.
|
|
|
|
|
2012-01-28 15:44:01 +01:00
|
|
|
2012-01-28 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* cygwin.din: Fix order (DATA first).
|
|
|
|
|
2012-01-27 10:28:38 +01:00
|
|
|
2012-01-27 Corinna Vinschen <corinna@vinschen.de>
|
2012-01-26 19:14:11 +01:00
|
|
|
|
2012-01-27 10:28:38 +01:00
|
|
|
* 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 19:14:11 +01:00
|
|
|
|
2012-01-26 17:35:34 +01:00
|
|
|
2012-01-26 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* sigproc.cc (child_info::retry_count): Default to 1.
|
|
|
|
|
2012-01-23 13:59:44 +01:00
|
|
|
2012-01-23 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* syscalls.cc (gethostid): Simplify. Just fetch MachineGuid and
|
|
|
|
create hash from there.
|
|
|
|
|
2012-01-22 22:43:25 +01:00
|
|
|
2012-01-22 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* 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 08:27:57 +01:00
|
|
|
2012-01-22 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* 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 07:45:08 +01:00
|
|
|
2012-01-22 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* 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 13:53:26 +01:00
|
|
|
2012-01-20 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* fhandler.h (fhandler_registry::opendir): Declare.
|
|
|
|
* fhandler_registry.cc (fhandler_registry::opendir): New function.
|
|
|
|
|
2012-01-13 10:15:22 +01:00
|
|
|
2012-01-13 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
|
|
|
|
|
|
|
|
* include/cygwin/config.h (_GLIBC_EXTENSION): Define.
|
|
|
|
|
2012-01-11 23:38:52 +01:00
|
|
|
2012-01-11 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
* spawn.cc (child_info_spawn::worker): Delete debugging.
|
|
|
|
|
2012-01-11 20:07:11 +01:00
|
|
|
2012-01-11 Christopher Faylor <me.cygwin2012@cgf.cx>
|
|
|
|
|
|
|
|
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 18:03:39 +01:00
|
|
|
2012-01-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* 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 15:19:56 +01:00
|
|
|
2012-01-09 Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
* miscfuncs.cc (thread_wrapper): Make sure stack is 16 byte aligned
|
|
|
|
to make gcc-3 compiled pthread applications happy.
|
|
|
|
|
2012-01-11 20:07:11 +01:00
|
|
|
2012-01-08 Christopher Faylor <me.cygwin2012@cgf.cx>
|
2012-01-08 07:24:17 +01:00
|
|
|
|
|
|
|
* 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 08:12:18 +01:00
|
|
|
2012-01-06 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
|
|
|
|
|
|
|
|
* cygwin.din (pthread_sigqueue): Export.
|
|
|
|
* posix.sgml (std-gnu): Add pthread_sigqueue.
|
|
|
|
* thread.cc (pthread_sigqueue): New function.
|
2012-01-11 20:07:11 +01:00
|
|
|
* thread.h (pthread_sigqueue): New function.
|
2012-01-06 08:12:18 +01:00
|
|
|
* include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
|
|
|
|
|
2012-01-11 20:07:11 +01:00
|
|
|
2012-01-02 Christopher Faylor <me.cygwin2012@cgf.cx>
|
2012-01-02 18:45:51 +01:00
|
|
|
|
|
|
|
* path.cc (get_current_dir_name): Avoid memory leak. Don't return PWD
|
|
|
|
contents if directory doesn't actually exist.
|
|
|
|
|
2012-01-01 19:54:25 +01:00
|
|
|
2012-01-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
|
|
|
|
|
|
|
|
* 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.
|