bdc00a0d85* cygtls.h (struct _local_storage): Remove unused members rarg and _localtime_buf. Remove username in favor of a global buffer. Reorder slightly to keep the net.cc stuff together. * globals.cc (__getlogin_username): New global char buffer. * tlsoffsets.h: Regenerate. * uinfo.cc (getlogin): Copy username into __getlogin_username.
Corinna Vinschen
2011-05-16 15:12:35 +0000
f783f223cb* libc/stdlib/strtod.c (_strtod_r): Fix nf/nd counts to not exceed DBL_DIG.
Corinna Vinschen
2011-05-16 13:34:06 +0000
883ea27df0* heap.cc (heap_init): Rewrite initial heap allocation to use addresses beyond 0x20000000. Explain why and how. * shared.cc (shared_info::heap_slop_size): Remove. * shared_info.h (class shared_info): Remove heap_slop_inited and heap_slop members. Remove heap_slop_size declaration. (CURR_SHARED_MAGIC): Update. * wincap.cc: Throughout, drop heapslop. * wincap.h (struct wincaps): Drop heapslop.
Corinna Vinschen
2011-05-16 10:27:14 +0000
6d6cfa4840* dcrt0.cc (child_info_fork::alloc_stack_hard_way): Check if the requested stack is application-provided within the user heap or an mmapped region. If so, just use it. Add comment to explain why. * miscfuncs.cc (thread_wrapper): If an application-provided stack has been given, implement cygtls area at the stackbase. Fix comment. * mmap.cc (is_mmapped_region): New function. * winsup.h (is_mmapped_region): Declare.
Corinna Vinschen
2011-05-16 09:55:18 +0000
aaded2f90e* libc/include/sys/features.h (_POSIX_THREAD_ATTR_STACKADDR): Define to 200112L for Cygwin.
Corinna Vinschen
2011-05-15 18:50:52 +0000
cdb4231369* cygwin.din (pthread_attr_getguardsize): Export. (pthread_attr_setguardsize): Export. (pthread_attr_setstack): Export. (pthread_attr_setstackaddr): Export. * init.cc (dll_entry): Remove wow64_test_stack_marker. Check for unusual stack address by testing stack addresses from current TEB. Check validity of _my_tls by testing if it's within the stack as given in current TEB. * miscfuncs.cc (struct thread_wrapper_arg): New structure used to push all required information to thread_wrapper function. (thread_wrapper): Wrapper function for actual thread function. If an application stack has been given, change %ebp and %esp so that the thread function runs on that stack. If the thread has been created by CygwinCreateThread, set up the POSIX guard pages if necessary. (CygwinCreateThread): New function. * miscfuncs.h (CygwinCreateThread): Declare. * ntdll.h (struct _TEB): Define all members up to Peb. * posix.sgml (std-susv4): Move pthread_attr_getguardsize, pthread_attr_setguardsize and pthread_attr_setstack here. (std-deprec): Add pthread_attr_setstackaddr. * sysconf.cc (sca): Set _SC_THREAD_ATTR_STACKADDR to _POSIX_THREAD_ATTR_STACKADDR. * thread.cc (pthread::precreate): Copy pthread_attr stackaddr and guardsize members. (pthread::create): Call CygwinCreateThread. (pthread_attr::pthread_attr): Initialize guardsize. (pthread_attr_setstack): New function. (pthread_attr_setstackaddr): New function. (pthread_attr_setguardsize): New function. (pthread_attr_getguardsize): New function. (pthread_getattr_np): Copy attr.guardsize. * thread.h (pthread_attr): Add member guardsize. * include/pthread.h (pthread_attr_getguardsize): Declare. (pthread_attr_setguardsize): Declare. * include/cygwin/version.h: Bump API minor number.
Corinna Vinschen
2011-05-15 18:49:40 +0000
b4966f9139* fhandler_process.cc (struct heap_info::heap): Convert base to uintptr_t. Add heap_id, end, flags members. (heap_info::heap_vm_chunks): Rename from heaps. (heap_info::heap_info): Rearrange using RtlQueryProcessDebugInformation to get information of heap virtual memory blocks. Store heap id and flags, as well as end address of each block. (heap_info::fill_if_match): Check incoming base address against full address range of heap chunks. Convert flag values in extra heap information. (format_process_maps): Change order so that heap check is done before MEM_MAPPED check since there are shareable heaps. * ntdll.h (PDI_HEAP_BLOCKS): Define. (HEAP_FLAG_NOSERIALIZE): Define. (HEAP_FLAG_GROWABLE): Define. (HEAP_FLAG_EXCEPTIONS): Define. (HEAP_FLAG_NONDEFAULT): Define. (HEAP_FLAG_SHAREABLE): Define. (HEAP_FLAG_EXECUTABLE): Define. (HEAP_FLAG_DEBUGGED): Define. (struct _DEBUG_HEAP_ARRAY): Define. (struct _DEBUG_HEAP_BLOCK): Define.
Corinna Vinschen
2011-05-13 06:50:20 +0000
4fda571831Based on newlib patch to strptime by Peter Rosin <peda@lysator.liu.se>: * libc/time/strptime.c (is_leap_year): New static function. (first_day): Ditto. (__strptime): Fill in tm_yday when all of tm_year, tm_mon and tm_mday are updated. Fill in tm_mon, tm_mday and tm_wday when both of tm_year and tm_yday are updated.
Corinna Vinschen
2011-05-12 13:44:54 +0000
4d1bf2fbb8* libc/time/strptime.c (strptime): Fill in tm_yday when all of tm_year, tm_mon and tm_mday are updated. Fill in tm_mon, tm_mday and tm_wday when both of tm_year and tm_yday are updated.
Corinna Vinschen
2011-05-12 13:41:22 +0000
7bb76e751b* libc/time/strptime.c (first_day): Actually return the wday of the first day of the year.
Corinna Vinschen
2011-05-12 12:43:43 +0000
205b82080b* fhandler_proc.cc (format_proc_meminfo): Rewrite to use sysinfo(). Support RAM and swap space larger than 4GB. Remove output elements not found with modern Linux kernels. (format_proc_swaps): Support paging files larger than 4GB.
Yaakov Selkowitz
2011-05-12 11:13:02 +0000
8285dae540* fhandler_process.cc (format_process_maps): Rework to report all mapped address space in a process (committed or reserved), identifying the nature of the mapping (mapped file/image, heap, shared memory) when possible. (dos_drive_mappings): New helper classes. (heap_info): Ditto. * ntdll.h (struct _MEMORY_SECTION_NAME): Define.
Corinna Vinschen
2011-05-11 10:31:22 +0000
34a6eeabff* autoload.cc (GetProcessMemoryInfo): Remove. * resource.cc (fill_rusage): Call NtQueryInformationProcess rather than GetProcessMemoryInfo to drop a psapi dependency.
Corinna Vinschen
2011-05-11 09:07:20 +0000
933d2af50d* fhandler_socket.cc (get_inet_addr): Rearrange for better readability. Make waiting loop interruptible and cancelable. Check for SYSTEM DOS flag before reading the file. Change return value to return 0 on success, SOCKET_ERROR on failure. (fhandler_socket::bind): Only set R/O DOS flag on filesystems not supporting ACLs. (fhandler_socket::connect): Accommodate changed return values from get_inet_addr. Use SOCKET_ERROR instead of -1. (fhandler_socket::sendto): Accommodate changed return values from get_inet_addr. * syslog.cc (connect_syslogd): Ditto.
Corinna Vinschen
2011-05-11 08:20:17 +0000
3bcc74a9ae* security.cc (check_registry_access): Handle missing security descriptor of HKEY_PERFORMANCE_DATA.
Christian Franke
2011-05-10 17:19:37 +0000
c29e693388* fhandler_proc.cc (format_proc_uptime): Don't call GetSystemInfo. Fetch CPU count from wincap. (format_proc_stat): Ditto. * globals.cc (system_info): Move to wincap. * heap.cc (heap_init): Fetch page size from wincap. * syscalls.cc (getpagesize): Fetch allocation granularity from wincap. (getsystempagesize): Fetch page size from wincap. * wincap.cc (wincap_2003): Default is_server to false. (wincapc::init): Call GetSystemInfo here. Always set is_server value. * wincap.h (class wincapc): Add system_info as private member. (wincapc::cpu_count): New public method. (wincapc::page_size): Ditto. (wincapc::allocation_granularity): Ditto.
Corinna Vinschen
2011-05-10 15:39:02 +0000
6cfbf1a573* cygwinenv.sgml: Move "forkchunk:xxx" to the removed options section. Change text accordingly.
Corinna Vinschen
2011-05-10 10:23:57 +0000
e0d1c52693* environ.cc (set_chunksize): Remove. (parse_thing): Remove forkchunk entry. * fork.cc (child_copy): Drop handling external chunksize setting. * wincap.cc: Througout, drop chunksize. (wincapc::set_chunksize): Remove. * wincap.h (struct wincaps): Drop chunksize and declaration of set_chunksize.
Corinna Vinschen
2011-05-10 10:17:30 +0000
d2302a485f* Makefile.in: Don't override CC. * cyglsa.c: Don't include wchar.h. Declare wcscpy and wcslen instead. * cyglsa64.dll: Rebuild.
Corinna Vinschen
2011-05-10 10:06:51 +0000
4964dafb65* setup2.sgml (setup-env-ov): Make sure everybody knows that the CYGWIN settings are just an example.
Corinna Vinschen
2011-05-10 08:56:04 +0000
6758d2a3aa* times.cc (settimeofday): Add EFAULT handler. Set errno to EINVAL if tv.tv_nsec is invalid, and to EPERM if SetSystemTime fails. Return -1 in case of failure, all for compatibility with BSD and Linux. (clock_settime): New function. * cygwin.din (clock_settime): Export. * posix.sgml (std-susv4): Add clock_settime. Move clock_setres from here... (std-deprec): ... to here. (std-notes): Correct limitation of clock_setres to only CLOCK_REALTIME. Add limitation of clock_settime to only CLOCK_REALTIME. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
Yaakov Selkowitz
2011-05-09 08:57:46 +0000
c395d22876* fhandler.h (fhandler_base::close_with_arch): Make non-virtual. (fhandler_base::open_fs): Move closer to it's close counterpart.
Christopher Faylor
2011-05-06 20:22:45 +0000
f4c566233f* fhandler.cc (fhandler_base::dup): Avoid duping a handle when an fhandler has an archetype. * fhandler_console.cc (fhandler_console::invisible_console): Move to the top. (fhandler_console::set_close_on_exec): Don't set close-on-exec on handle since it's an archetype and you don't know how many things could be using it.
Christopher Faylor
2011-05-06 20:12:20 +0000
b66dba56c5* fhandler.h (fhandler_dev_dsp): Cosmetic change. * fhandler_tty.cc (fhandler_pty_master::process_slave_output): Put back Sleep(10) for tty_master case. * sigproc.cc (stopped_or_terminated): Don't consider a pid which has been reaped to be terminated.
Christopher Faylor
2011-05-06 19:13:22 +0000
cc718e26c6* libc/minires-os-if.c (get_dns_info): Drop printing uninitialized value of dwRetVal in debug output.
Corinna Vinschen
2011-05-06 18:43:37 +0000
a4e5706eb2* fhandler.h (fhandler_socket::read): Declare. (fhandler_socket::write): Declare. * fhandler_procsys.cc (fhandler_procsys::read): Add FIXME comment. (fhandler_procsys::write): Ditto. * fhandler_socket.cc (fhandler_socket::read): New method. (fhandler_socket::write): New method. * syscalls.cc: Rearrange order of read/write functions. (read): Call fhandler read method directly instead of just readv. (readv): Remove EINTR loop. This is done in all affected fhandler's now. (write): Call fhandler write method directly instead of just writev. Fix debug output.
Corinna Vinschen
2011-05-06 10:56:37 +0000
92ddb74290* cygheap.cc (cygheap::close_ctty): Close ctty via close_with_arch(). * debug.cc (close_handle): Call debugger on failure. * devices.in (device::tty_to_real_device): Delete. * devices.h (device::tty_to_real_device): Ditto. * devices.cc: Regenerate. * dtable.cc: Delete old ifdef'ed vfork code. (dtable::release): Don't handle archetype here. (dtable::init_std_file_from_handle): Consolidate console tests. Generate major/minor for tty ASAP. Fix incorrect setting of DEV_TTYS* for serial. (fh_alloc): New function derived from build_fh_pc. Pass current tty when building tty. (build_pc_pc): Use fh_alloc to create. Set name from fh->dev if appropriate. Generate an archetype or point to one here. (dtable::dup_worker): Deal with archetypes. Rely on = operator copying whole class rather than just fhandler_base. (dtable::fixup_after_exec): Call close_with_arch to handle closing of fhandlers with archetypes. * fhandler.cc (fhandler_base::operator =): Call memcpy with fhandler's size() rather than sizeof fhandler_base. (fhandler_base::open_with_arch): New function. Handles opening of fhandler's with archetypes, dealing with usecounts, etc. (fhandler_base::close_with_arch): Ditto for close. * fhandler.h: Many changes for archetypes. (fhandler_base::set_name): Set both normalized path and regular path. (fhandler_base::open_with_arch): New function. (fhandler_base::open_setup): Ditto. (fhandler_base::use_archetype): Ditto. (fhandler_base::_archetype_usecount): Ditto. (fhandler_*::size): Ditto. (fhandler_dev_tape::open): Remove virtual decoration. (fhandler_console::use_archetype): New function. Return true. (fhandler_console::open_setup): New function. (fhandler_console::dup): Delete. (fhandler_tty_slave::fhandler_tty_slave): Redeclare to take an argument. (fhandler_tty_slave::use_archetype): New function. Return true. (fhandler_tty_slave::cleanup): New function. (fhandler_pty_master::use_archetype): New function. Return true. (fhandler_pty_master::cleanup): New function. (fhandler_pty_master::is_tty_master): New function. Return false. (fhandler_tty_master::is_tty_master): New function. Return true. (fhandler_dev_dsp::fhandler_dev_dsp): New function. Return true. (report_tty_counts): Only report on archetype's usecount if there is one. * fhandler_console.cc (fhandler_console::get_tty_stuff): Remove handling of setsid, set_ctty, set_flags, and manage_console_count. (fhandler_console::open_setup): New function. Implement functionality removed from get_tty_stuff. (fhandler_console::dup): Delete. (fhandler_console::output_tcsetattr): Set errno on error. (fhandler_console::fhandler_console): Set device early. (fhandler_console::init): Use open_with_arch to open console handles. (fhandler_console::fixup_after_fork_exec): Nuke most of the stuff for dealing with console handles. * fhandler_dsp.cc (fhandler_dev_dsp::open): Remove archetype handling. (fhandler_dev_dsp::write): Ditto. (fhandler_dev_dsp::read): Ditto. (fhandler_dev_dsp::close): Ditto. (fhandler_dev_dsp::dup): Ditto. (fhandler_dev_dsp::ioctl): Ditto. (fhandler_dev_dsp::fixup_after_fork): Ditto. (fhandler_dev_dsp::fixup_after_exec): Ditto. * fhandler_tty.cc (fhandler_tty_common::__acquire_output_mutex): Add a little more debugging. (fhandler_tty_common::__release_output_mutex): Ditto. (fhandler_pty_master::process_slave_output): Ditto. Don't do signal handling or pthread_cancel handling in the tty master thread. (process_output): Minor reorg. (fhandler_tty_slave::fhandler_tty_slave): Set device based on new ntty argument. (fhandler_tty_slave::open): Remove archetype handling. Move some processing into open_setup(). (fhandler_tty_slave::open_setup): New function. (fhandler_tty_slave::cleanup): New function. (fhandler_tty_slave::close): Remove archetype handling. Move some processing into cleanup(). (fhandler_tty_slave::init): Rename argument from f to h. Open device using open_with_arch(). Remove archetype handling. (fhandler_pty_master::dup): Ditto. (fhandler_pty_master::open): Ditto. (fhandler_pty_master::close): Ditto. Move some handling to cleanup(). (fhandler_pty_master::cleanup): New function. (fhandler_tty_master::init_console): Give unique name to captive console fhandler. * pinfo.cc (_pinfo::set_ctty): Rename argument from arch to fh. Eliminate archetype assumption. * syscalls.cc (close_all_files): Use close_with_arch for closing. (open): Use open_with_arch() rather than open(). (close): Use close_with_arch() rather than close().
Christopher Faylor
2011-05-05 22:30:53 +0000
d8ff96389f* pinfo.h (class push_process_state): New class to push a process state flag temporarily into myself->process_state. * fhandler_console.cc (fhandler_console::read): Add push_process_state handler. (fhandler_console::write): Call bg_check from here. Add push_process_state handler. * fhandler_tty.cc (fhandler_tty_slave::write): Ditto. (fhandler_tty_slave::read): Ditto. (fhandler_pty_master::write): Ditto. (fhandler_pty_master::read): Ditto. * syscalls.cc (readv): Remove bg_check call and setting process state. (writev): Ditto.
Corinna Vinschen
2011-05-05 19:43:04 +0000
23db0a41d8* syscalls.cc (readv): Add myfault handler. Don't check repeatedly open state of file handler. Streamline loop. (writev): Add myfault handler.
Corinna Vinschen
2011-05-05 18:46:38 +0000
2b31bc47a7* fhandler_disk_file.cc (fhandler_disk_file::pread): Correctly return with errno set to EBADF if file open mode is incorrect. (fhandler_disk_file::pwrite): Ditto.
Corinna Vinschen
2011-05-05 13:45:06 +0000
25c50222d9* configure.ac (alpha*-dec-osf*, i[[3456789]]86-*-rdos*, sh*-*-pe|mips*-*-pe|arm-wince-pe, sparc-*-sunos4*, *-*-aix*, *-*-beos*, *-*-chorusos, *-*-dragonfly*, *-*-freebsd*, *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu, *-*-lynxos*, *-*-mingw*, *-*-netbsd*, *-*-netware*, *-*-tpf*, *-*-uclinux*, *-*-vxworks*): Disable newlib and libgloss in separate case statement. (i[[3456789]]86-*-linux*): Move logic allowing newlib to be built to separate case statement. (*-*-chorusos, *-*-dragonfly*, *-*-freebsd*, *-*-netbsd*, *-*-netware*, *-*-tpf*, *-*-uclinux*, *-*-vxworks*, alpha*-dec-osf*, alpha*-*-linux*, am33_2.0-*-linux*, sh-*-linux*, sh*-*-pe|mips*-*-pe|*arm-wince-pe, arm-*-coff, arm-*-elf* | arm*-*-eabi*, arm*-*-linux-gnueabi, arm*-*-symbianelf*, avr-*-*, bfin-*-*, cris-*-* | crisv32-*-*, frv-*-*, i[[3456789]]86-*-coff | i[[3456789]]86-*-elf, i[[3456789]]86-w64-mingw*, i[[3456789]]86-*-mingw*, x86_64-*-mingw*, i[[3456789]]86-*-interix*, i[[3456789]]86-*-beos*, i[[3456789]]86-*-rdos*, m32r-*-*, m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*, m68k-*-elf*, m68*-*-* | fido-*-*, powerpc-*-aix*, powerpc-*-beos*, powerpc-*-eabi, powerpc-*-eabi* | powerpcle-*-eabi* | powerpc-*-rtems*, rs6000-*-lynxos*, rs6000-*-aix*, mips*-*-linux*, sparclet-*-aout* | sparc86x-*-*, sparc-*-elf*, sparc64-*-elf*, sparclite-*-*, sparc-*-sunos4*, sparc-*-solaris* | sparc64-*-solaris* | sparcv9-*-solaris*, *-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu | *-*-kopensolaris*-gnu, *-*-lynxos*, *-*-*): Don't disable newlib and libgloss in main case over targets. Remove most empty cases in main case over targets. * configure: Regenerate.
Joseph Myers
2011-05-05 12:39:33 +0000
392323df55* fhandler.cc (is_at_eof): Drop static storage class. Drop err parameter since we don't change the Win32 error here anymore. (fhandler_base::raw_read): Accommodate change to is_at_eof.
Corinna Vinschen
2011-05-05 09:05:04 +0000
03406c1ae6* dcrt0.cc (dll_crt0_1): Reset locale to "C" even when dynamically loaded.
Corinna Vinschen
2011-05-05 07:31:13 +0000
192737978e* posix.sgml (std-notimpl): Remove bsd_signal, setcontext, and swapcontext, marked obsolete in SUSv3 and not present in SUSv4.
Corinna Vinschen
2011-05-05 06:48:51 +0000
2849cbde54* fhandler_registry.cc (fhandler_registry::exists): Fix regression in EACCES handling. (fhandler_registry::open): Fix "%val" case.
Corinna Vinschen
2011-05-05 06:45:21 +0000
5069a2b0d9* signal.cc (_pinfo::kill): Return success on kill(0) only if pid exists or is in PID_EXITED state. Report pid 0 when pid does not exist rather than pid -1. Make debug output reflect actual function call. * sigproc.cc (stopped_or_terminated): Set process state to reaped when we've finished waiting for it. * include/sys/cygwin.h (PID_REAPED): New enum.
Christopher Faylor
2011-05-05 00:31:22 +0000
2f7a5c89cc* cygwin.din (psiginfo): Export. (psignal): Export. (sys_siglist): Export. * posix.sgml (std-notimpl): Move psiginfo and psignal from here... (std-susv4): ... to here. (std-deprec): Add sys_siglist. * strsig.cc (sys_siglist): New array. (psiginfo): New function. * include/cygwin/signal.h (sys_siglist): Declare. (psiginfo): Declare. * include/cygwin/version.h (CYGWIN_VERSION_API_MINOR): Bump.
Yaakov Selkowitz
2011-05-04 22:12:15 +0000
fab6d5dd03* configure.ac: Remove code setting special library locations for hppa*64*-*-hpux11*. Remove code setting compiler for sparc-sun-solaris2*. * configure: Regenerate.
Joseph Myers
2011-05-04 21:45:47 +0000
975757698f* dll_list::detach (dll_list::detach): Avoid doing anything with detach during a failing fork.
Christopher Faylor
2011-05-04 19:19:46 +0000
3521d50480* dll_init.cc (dll_global_dtors): Avoid calling destructors during failing fork().
Christopher Faylor
2011-05-04 16:02:45 +0000
54e4df33a2* fhandler.h (class fhandler_base): Remove uninterruptible_io status flag. (fhandler_base::ready_for_read): Remove declaration. (fhandler_socket::ready_for_read): Ditto. (fhandler_pipe::ready_for_read): Ditto. (fhandler_tty_master::is_slow): Remove. * fhandler_console.cc (fhandler_console::open): Drop setting uninterruptible_io. * fhandler_serial.cc (fhandler_serial::open): Ditto. * fhandler_tty.cc (fhandler_tty_slave::fhandler_tty_slave): Ditto. (fhandler_tty_master::init_console): Ditto. * pipe.cc (fhandler_pipe::fhandler_pipe): Ditto. (fhandler_pipe::open): Ditto. (_pipe): Ditto. * select.cc (fhandler_pipe::ready_for_read): Remove. (fhandler_base::ready_for_read): Remove. * syscalls.cc (readv): Drop unneeded wait variable. Remove entire test which might lead to calling ready_for_read. Remove now unused label out.
Corinna Vinschen
2011-05-04 13:06:10 +0000
82fa6b929b* fhandler.h (class fhandler_mailslot): Move down in file and change parent class to fhandler_base_overlapped. Remove declaration of method write. Add declaraiotns for raw_read and raw_write. * fhandler_mailslot.cc (fhandler_mailslot::fhandler_mailslot): Call fhandler_base_overlapped constructor. (fhandler_mailslot::fstat): Call fhandler_base_overlapped::fstat. (fhandler_mailslot::open): Drop FILE_SYNCHRONOUS_IO_NONALERT flag from call to NtOpenFile. (fhandler_mailslot::raw_read): New method. (fhandler_mailslot::raw_write): Ditto. Take over length algorithm from former write method. (fhandler_mailslot::write): Remove. (fhandler_mailslot::ioctl): Call fhandler_base_overlapped::ioctl.
Corinna Vinschen
2011-05-04 12:56:12 +0000
412693ab65* fhandler.h (fhandler_dev_tape::_lock): Add bool parameter. * fhandler_tape.cc (lock): Call _lock with false argument. (_lock): Take bool cancelable parameter. Handle O_NONBLOCK. Make cancelable if cancelabe parameter is true. (fhandler_dev_tape::raw_read): Call _lock with true argument. (fhandler_dev_tape::raw_write): Ditto.
Corinna Vinschen
2011-05-04 12:23:00 +0000
5152a53ade* fhandler_dsp.cc (fhandler_dev_dsp::Audio): Add fh member. (fhandler_dev_dsp::Audio_out::Audio_out): Take pointer to encapsulating fhandler_dev_dsp as parameter. (fhandler_dev_dsp::Audio_in::Audio_in): Ditto. (fhandler_dev_dsp::Audio::Audio): Take pointer to encapsulating fhandler_dev_dsp as parameter and store in fh. (fhandler_dev_dsp::Audio_out::write): Change return type to int and return number of bytes written. Return -1 if waitforspace returns false and no bytes have been written so far. (fhandler_dev_dsp::Audio_out::waitforspace): Change return type to bool. Handle O_NONBLOCK. Make waiting loop interruptible and cancelable. Return false in any of these cases, otherwise true. (fhandler_dev_dsp::Audio_in::read): Set returned nBytes to -1 if waitfordata returns false and nothing has been read so far. (fhandler_dev_dsp::Audio_in::waitfordata): Change return type to bool. Handle O_NONBLOCK. Make waiting loop interruptible and cancelable. Return false in any of these cases, otherwise true. (fhandler_dev_dsp::write): Call Audio_out constructor with this as parameter. (fhandler_dev_dsp::read): Call Audio_in constructor with this as parameter.
Corinna Vinschen
2011-05-04 11:41:22 +0000
307b0a5d4b* libc/include/signal.h (psignal): Declare. * libc/sys/linux/psignal.c: Move from here... * libc/signal/psignal.c: ... to here. Document. * libc/sys/linux/Makefile.am (GENERAL_SOURCES): Move psignal.c from here... * libc/signal/Makefile.am (LIB_SOURCES): ... to here. (CHEWOUT_FILES): Add psignal.def. * libc/sys/linux/Makefile.in: Regenerate. * libc/signal/Makefile.in: Ditto. * libc/signal/signal.tex: Add references to psignal.
Yaakov Selkowitz
2011-05-04 11:26:22 +0000
3c34866881* configure.ac: Separate libgloss_dir settings from general case over targets. * configure: Regenerate.
Joseph Myers
2011-05-04 09:51:31 +0000
f737a4edba* libc/locale/lmessages.h (__messages_load_locale): Declare. Remove accidental declaration of __numeric_load_locale. * libc/locale/locale.c: Include timelocal.h to get declaration of __time_load_locale. (__set_locale_from_locale_alias): Fix return type. (__locale_msgcharset): Avoid compiler warnings. (_localeconv_r): Ditto.
Corinna Vinschen
2011-05-04 08:54:34 +0000
6e16da9decCygwin-specific patch from Andy Koppe: * libc/locale/locale.c (current_categories): On Cygwin, set LC_CTYPE to C.UTF-8 to match initial __wctomb and __mbtowc settings. (lc_ctype_charset): On Cygwin, initialize to "UTF-8". (loadlocale): Remove unused Cygwin-specifc code.
Corinna Vinschen
2011-05-04 08:45:17 +0000
9d2b7928b5* thread.h (pthread::static_cancel_self): Mark as noreturn. (pthread::cancel_self): Ditto. * thread.cc (pthread::cancel_self): Explicitly use pthread::exit to avoid a "function returns" error.
Christopher Faylor
2011-05-04 06:16:59 +0000
cdbb272b4c* pinfo.cc (pinfo::pinfo): Set procinfo to NULL to avoid potential cleanup of uninitialized garbage. (Suggested by Ryan Johnson)
Christopher Faylor
2011-05-04 06:00:54 +0000
781822a646* select.cc (cygwin_select): Make degenerate case cancelable. (select_stuff::destroy): New inline method to delete memory taken by select_stuff. (select_stuff::~select_stuff): Call destroy. (select_stuff::wait): Add case to allow canceling select. * select.h (select_stuff::destroy): Declare. * thread.cc: Mark poll, pselect and poll as cancelable.
Corinna Vinschen
2011-05-03 15:58:52 +0000
3728c79d48* locale.cc (print_locale_with_codeset): Align printing of locale names to POSIX.
Corinna Vinschen
2011-05-03 10:34:25 +0000
c402095aae* fhandler.cc (fhandler_base_overlapped::wait_overlapped): Make cancelable. Remove test for main thread, always add signal_arrived to waited objects.
Corinna Vinschen
2011-05-03 10:11:19 +0000
3ff46ba853* fhandler_tty.cc (fhandler_tty_slave::read): Set WFMO timeout to 0 for nonblocking case. Drop useless waiter variable. Rewrite wait for input_available_event to use a switch statement. Handle timeout and failure more gracefully. Make restartable and cancelable. Rewrite wait for input_mutex to use WFMO and a switch statement. Handle timeout and failure more gracefully. Make restartable and cancelable.
Corinna Vinschen
2011-05-03 07:58:13 +0000
58349d7c9d* sysconf.cc (sca): Set _SC_SPIN_LOCKS to _POSIX_SPIN_LOCKS.
Yaakov Selkowitz
2011-05-02 16:11:06 +0000
5f555b0bd3* libc/include/sys/features.h [__CYGWIN__] (_POSIX_SPIN_LOCKS): Define. * libc/include/sys/types.h: Cygwin provides its own pthread_spinlock_t typedef.
Yaakov Selkowitz
2011-05-02 16:05:06 +0000
8978381c2aEliminate trailing whitespace in some files.
Christopher Faylor
2011-05-02 15:28:35 +0000
138f3e0cbdThroughout remove NT4 from documentation.
Corinna Vinschen
2011-05-02 11:56:36 +0000
29b1327208* fhandler_serial.cc (fhandler_serial::raw_read): Add restartability after a signal. Add cancelability. (fhandler_serial::raw_write): Wait for write to succeed if O_NONBLOCK is not set. Add signal handling and cancelability.
Corinna Vinschen
2011-05-02 10:20:35 +0000
79e741ef6fThroughout, use user32 UNICODE functions rather than ANSI functions. * autoload.cc: Convert all definitions for ANSI user32 functions to definitions for the corresponding UNICODE function. (SendMessageA): Remove. (SendNotifyMessageW): Define. * fhandler_windows.cc (fhandler_windows::write): Use SendNotifyMessageW call rather than SendMessage to make function always return immediately. (fhandler_windows::read): Make function interruptible and a cancellation point. Handle O_NONBLOCK. * select.cc (peek_serial): Don't wait for signal_arrived here. * window.cc (wininfo::winthread): Call CreateWindowExW directly rather than CreateWindow wrapper.
Corinna Vinschen
2011-05-01 14:35:12 +0000
c60d0bbe68* net.cc (fdsock): Drop setting uninterruptible_io to true.
Corinna Vinschen
2011-05-01 08:14:40 +0000