* fhandler_dsp.cc (fhandler_dev_dsp::Audio_out::stop): Move delete of
bigwavebuffer_ so that it is always cleaned, also in child processes.
(fhandler_dev_dsp::Audio_in::stop): Ditto.
(fhandler_dev_dsp::close): Stop audio play immediately in case of
abnormal exit.
* thread.cc (pthread::create): Move postcreate call to avoid a potential race.
(pthread::cancelable_wait): Don't allow signal interrupt unless main thread.
Pierre Humblet [Thu, 6 May 2004 16:26:10 +0000 (16:26 +0000)]
2004-05-06 Pierre Humblet <pierre.humblet@ieee.org>
* path.cc (path_conv::check): Strip trailing dots and spaces and
return error if the final component had only dots and spaces.
(normalize_posix_path): Revert 2004-04-30.
(chdir): Do not check for trailing spaces. Do not set native_dir
to c:\ for virtual devices. Pass only native_dir to cwd.set.
(cwdstuff::set): Assume posix_cwd is already normalized.
* path.cc (normalize_win32_path): Detect components with only dots. Remove a
final . if it follows '\\'.
(mount_info::conv_to_win32_path): Only backslashify the path when no mount is
found.
(chdir): Do not look for components with only dots.
DJ Delorie [Tue, 27 Apr 2004 18:25:01 +0000 (18:25 +0000)]
merge from gcc:
2004-04-27 Paolo Bonzini <bonzini@gnu.org>
Revert:
2004-04-26 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (flags_to_pass): Remove *dir variables that
are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS,
as well as prefix and exec_prefix.
* Makefile.in: Regenerate.
2004-04-26 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (host_modules): Mark with the bootstrap
flag packages on which gcc depends.
* Makefile.tpl (all-bootstrap): Use it.
* Makefile.in: Regenerate.
2004-04-26 Paolo Bonzini <bonzini@gnu.org>
* Makefile.def (flags_to_pass): Remove *dir variables that
are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS,
as well as prefix and exec_prefix.
* Makefile.in: Regenerate.
2004-04-26 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL.
* configure: Regenerate.
* config/acx.m4: Mutuate ACX_PROG_CMP_IGNORE_INITIAL from gcc.
* gcc/Makefile.tpl (compare): Use the result of the test.
* gcc/Makefile.in: Regenerate.
2004-04-23 Paolo Bonzini <bonzini@gnu.org>
* Makefile.tpl (all-stage1-gcc, all-stage2-gcc, all-stage3-gcc):
Always relocate gcc and prev-gcc to the original names, even
if the build fails.
(new-cleanstrap, new-restage1, new-restage2, new-restage3):
New targets.
Chris Demetriou [Sat, 24 Apr 2004 06:12:25 +0000 (06:12 +0000)]
[ bfd/ChangeLog ]
2004-04-23 Chris Demetriou <cgd@broadcom.com>
* coff-mips.c (mips_relhi_reloc, mips_rello_reloc)
(mips_switch_reloc, mips_read_relocs, mips_relax_section)
(mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove.
(mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments,
and update comments to reflect current usage.
(mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO,
and MIPS_R_SWITCH, as well as several empty entries. Update comment
for MIPS_R_PCREL16.
(mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out)
(mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support
for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations.
(mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation
type number to be MIPS_R_PCREL16.
(mips_relocate_section): Remove support for link-time relaxation
of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH,
MIPS_R_RELLO, and MIPS_R_RELHI relocations.
(_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section.
* ecoff.c (ecoff_indirect_link_order): Remove support for link-time
relaxation of branches used by embedded-PIC.
* ecofflink.c (bfd_ecoff_debug_accumulate): Likewise.
* libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC
related members, update comment.
* pe-mips.c: Remove disabled (commented-out and #if 0'd)
code related to embedded-PIC.
* elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove
initialization of now-removed 'adjust' member of
'struct ecoff_debug_info'.
[ include/coff/ChangeLog ]
2004-04-23 Chris Demetriou <cgd@broadcom.com>
Jeff Johnston [Fri, 23 Apr 2004 21:30:04 +0000 (21:30 +0000)]
2004-04-23 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/powerpc/vfscanf.c (NNZDIGITS): New define.
(__svfscanf_r): In integer conversions, leave out leading zeroes
which are not part of a base prefix.
Keep track of width truncation to fit into buf, not counting left-out
zeroes against width till the truncation has been compensated for.
This is based on Joern's patch of 04/21 for libc/stdio/vfscanf.c.
* libc/stdio/vfscanf.c (NNZDIGITS): New define.
(__svfscanf_r): In integer conversions, leave out leading zeroes
which are not part of a base prefix.
Keep track of width truncation to fit into buf, not counting left-out
zeroes against width till the truncation has been compensated for.
* DISCLAIMER: Add words about "free to use".
* README: Modify "Win32 runtime" to "Microsoft C Runtime".
* Makefile.in (SRCDIST_FILES): Add DISCLAIMER and README.
(inst_docdir): New variable.
(INSTDOCS): Ditto.
(FLAGS_TO_PASS): Include inst_docdir.
(install-dirs): Add inst_docdir.
(install): Add loop for INSTDOCS.
* path.cc (is_unc_share): Rename from slash_unc_prefix_p throughout.
* path.cc (normalize_posix_path): Process all Posix paths and map three or more
initial slashes to a single one. Simplify processing following two initial
slashes.
(normalize_win32_path): Make last argument non-optional and do not check for
NULL value.
* fhandler_disk_file.cc (fhandler_base::open_fs): Change
set_file_attribute call to indicate that NT security isn't used.
(fhandler_disk_file::fchmod): Rearrange to isolate 9x related
statements.
Do not set FILE_ATTRIBUTE_SYSTEM.
(fhandler_disk_file::fchown): Check noop case first.
* fhandler.cc (fhandler_base::open9x): Remove ntsec related statements.
(fhandler_base::set_name): Do not set namehash.
* fhandler.h (fhandler_base::get_namehash): Compute and set namehash if
needed.
* syscalls.cc (access): Verify that fh is not NULL. Do not set PC_FULL.
(chmod): Ditto.
(chown_worker): Ditto.
(stat_worker): Ditto. Verify if the path exists.
* autoload.cc (NtCreateFile): Add.
* dir.cc (mkdir): Change set_file_attribute call to indicate that
NT security isn't used.
* fhandler.cc (fhandler_base::open_9x): New method, created from
fhandler_base::open.
(fhandler_base::open): Rearrange to use NtCreateFile instead of
CreateFile.
* fhandler.h (enum query_state): Redefine query_null_access to
query_stat_control. query_null_access isn't allowed in NtCreateFile.
(fhandler_base::open_9x): Declare.
* fhandler_disk_file.cc (fhandler_base::fstat_fs): Use
query_stat_control first, query_read_control if that fails.
(fhandler_disk_file::fchmod): Call enable_restore_privilege before
trying to open for query_write_control. Don't fall back to
opening for query_read_control.
(fhandler_disk_file::fchown): Ditto.
(fhandler_disk_file::facl): Only request restore privilege and query
access necessary for given cmd.
* fhandler_raw.cc (fhandler_dev_raw::open): Call fhandler_base::open
instead of opening device here.
* ntdll.h (NtCreateFile): Declare.
* path.cc (symlink_worker): Change set_file_attribute call to indicate
that NT security isn't used.
* sec_acl.cc (getacl): Fix bracketing.
* sec_helper.cc (enable_restore_privilege): New function.
* security.cc (str2buf2uni_cat): New function.
(write_sd): Don't request restore permission here.
* security.h (set_process_privileges): Drop stale declaration.
(str2buf2uni): Declare.
(str2buf2uni_cat): Declare.
(enable_restore_privilege): Declare.
* syscalls.cc (fchown32): Return immediate success on 9x.
* fhandler.cc (fhandler_base::open): Accomodate query_write_control
query_state.
(fhandler_base::fchown): New method.
* fhandler.h: Declare fchown method in fhandler_base,
fhandler_disk_file and fhandler_virtual.
(enum query_state): Add query_write_control.
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Set query_state
to query_write_control. Only remove FILE_ATTRIBUTE_READONLY if not
setting security descriptor.
(fhandler_disk_file::fchown): New method.
* fhandler_virtual.cc (fhandler_virtual::fchown): New method.
* sec_acl.cc (setacl): Call write_sd with additional handle attribute.
* security.cc (write_sd): Take handle argument. Only request owner
if getting SE_RESTORE_NAME privilege failed. Only open file if
NtSetSecurityObject failed or handle is NULL.
(set_nt_attribute): Call write_sd with additional handle attribute.
* security.h (write_sd): Declare with additional handle argument.
* cygwin.din: Export rand_r and ttyname_r.
* syscalls.cc (ttyname_r): New function.
(ttyname): Move functionality to ttyname_r. Call it from here.
* include/cygwin/version.h: Bump API minor number.
Pierre Humblet [Wed, 14 Apr 2004 03:08:00 +0000 (03:08 +0000)]
2004-04-14 Pierre Humblet <pierre.humblet@ieee.org>
* path.h (path_conv::set_symlink): Add argument.
(path_conv::get_symlink_length): New method.
(path_conv::symlink_length): New member.
* path.cc (path_conv::check): Pass symlen to set_symlink.
* fhandler_disk_file.cc (fhandler_base::fstat_helper): For symlinks
set st_size from get_symlink_length.
* winsup.api/devdsp.c (forkrectest): Move synchronization with child
so that test passes also under high CPU load.
(forkplaytest): Ditto.
(abortplaytest): New function to test ioctl code SNDCTL_DSP_RESET.