mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Update.
2003-02-01 Ulrich Drepper <drepper@redhat.com> * time/tzfile.c (__tzfile_compute): Change return value type to void. Adjust return statements. * include/time.h (__tzfile_compute): Adjust prototype. 2003-02-01 Jim Meyering <jim@meyering.net> * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute always returns 1. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub. * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise. 2003-01-31 Steven Munroe <sjmunroe@us.ibm.com> * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel back to 2.4.19 for powerpc64. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64. (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64. 2003-02-01 Ulrich Drepper <drepper@redhat.com> * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for platforms with strange alignment requirements on wchar_t.
This commit is contained in:
@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995, 1996, 1997, 2003 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
|
||||
|
||||
@ -17,10 +17,8 @@
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <wchar.h>
|
||||
|
||||
#define __need_ptrdiff_t
|
||||
#include <stddef.h>
|
||||
#include <wchar.h>
|
||||
|
||||
|
||||
/* Copy SRC to DEST. */
|
||||
@ -29,16 +27,33 @@ wcscpy (dest, src)
|
||||
wchar_t *dest;
|
||||
const wchar_t *src;
|
||||
{
|
||||
wchar_t *wcp = (wchar_t *) src;
|
||||
wint_t c;
|
||||
const ptrdiff_t off = dest - src - 1;
|
||||
wchar_t *wcp;
|
||||
|
||||
do
|
||||
if (__alignof__ (wchar_t) >= sizeof (wchar_t))
|
||||
{
|
||||
c = *wcp++;
|
||||
wcp[off] = c;
|
||||
const ptrdiff_t off = dest - src - 1;
|
||||
|
||||
wcp = (wchar_t *) src;
|
||||
|
||||
do
|
||||
{
|
||||
c = *wcp++;
|
||||
wcp[off] = c;
|
||||
}
|
||||
while (c != L'\0');
|
||||
}
|
||||
else
|
||||
{
|
||||
wcp = dest;
|
||||
|
||||
do
|
||||
{
|
||||
c = *src++;
|
||||
*wcp++ = c;
|
||||
}
|
||||
while (c != L'\0');
|
||||
}
|
||||
while (c != L'\0');
|
||||
|
||||
return dest;
|
||||
}
|
||||
|
Reference in New Issue
Block a user