mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-10 05:03:06 +03:00
* locale/programs/ld-monetary.c (monetary_finish): Avoid range check
for int_frac_digits and frac_digits. * login/logout.c (logout): Avoid aliasing violation. * login/logwtmp.c (logwtmp): Likewise. * libio/genops.c (_IO_un_link): Avoid aliasing violation.
This commit is contained in:
@@ -1,5 +1,13 @@
|
|||||||
2007-07-26 Jakub Jelinek <jakub@redhat.com>
|
2007-07-26 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* locale/programs/ld-monetary.c (monetary_finish): Avoid range check
|
||||||
|
for int_frac_digits and frac_digits.
|
||||||
|
|
||||||
|
* login/logout.c (logout): Avoid aliasing violation.
|
||||||
|
* login/logwtmp.c (logwtmp): Likewise.
|
||||||
|
|
||||||
|
* libio/genops.c (_IO_un_link): Avoid aliasing violation.
|
||||||
|
|
||||||
* nscd/selinux.c (preserve_capabilities): Initialize new_caps
|
* nscd/selinux.c (preserve_capabilities): Initialize new_caps
|
||||||
to avoid warning.
|
to avoid warning.
|
||||||
* iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
|
* iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
|
||||||
|
@@ -64,23 +64,29 @@ _IO_un_link (fp)
|
|||||||
{
|
{
|
||||||
if (fp->file._flags & _IO_LINKED)
|
if (fp->file._flags & _IO_LINKED)
|
||||||
{
|
{
|
||||||
struct _IO_FILE_plus **f;
|
struct _IO_FILE **f;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
_IO_cleanup_region_start_noarg (flush_cleanup);
|
_IO_cleanup_region_start_noarg (flush_cleanup);
|
||||||
_IO_lock_lock (list_all_lock);
|
_IO_lock_lock (list_all_lock);
|
||||||
run_fp = (_IO_FILE *) fp;
|
run_fp = (_IO_FILE *) fp;
|
||||||
_IO_flockfile ((_IO_FILE *) fp);
|
_IO_flockfile ((_IO_FILE *) fp);
|
||||||
#endif
|
#endif
|
||||||
for (f = &INTUSE(_IO_list_all); *f;
|
if (INTUSE(_IO_list_all) == NULL)
|
||||||
f = (struct _IO_FILE_plus **) &(*f)->file._chain)
|
;
|
||||||
|
else if (fp == INTUSE(_IO_list_all))
|
||||||
{
|
{
|
||||||
if (*f == fp)
|
INTUSE(_IO_list_all)
|
||||||
|
= (struct _IO_FILE_plus *) INTUSE(_IO_list_all)->file._chain;
|
||||||
|
++_IO_list_all_stamp;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
for (f = &INTUSE(_IO_list_all)->file._chain; *f; f = &(*f)->_chain)
|
||||||
|
if (*f == (_IO_FILE *) fp)
|
||||||
{
|
{
|
||||||
*f = (struct _IO_FILE_plus *) fp->file._chain;
|
*f = fp->file._chain;
|
||||||
++_IO_list_all_stamp;
|
++_IO_list_all_stamp;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
fp->file._flags &= ~_IO_LINKED;
|
fp->file._flags &= ~_IO_LINKED;
|
||||||
#ifdef _IO_MTSAFE_IO
|
#ifdef _IO_MTSAFE_IO
|
||||||
_IO_funlockfile ((_IO_FILE *) fp);
|
_IO_funlockfile ((_IO_FILE *) fp);
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
/* Copyright (C) 1995-1999,2000,2001,2002,2005 Free Software Foundation, Inc.
|
/* Copyright (C) 1995-1999,2000,2001,2002,2005,2007
|
||||||
|
Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
Contributed by Ulrich Drepper <drepper@gnu.org>, 1995.
|
||||||
|
|
||||||
@@ -279,13 +280,14 @@ not correspond to a valid name in ISO 4217"),
|
|||||||
monetary->cat = initval; \
|
monetary->cat = initval; \
|
||||||
} \
|
} \
|
||||||
else if ((monetary->cat < min || monetary->cat > max) \
|
else if ((monetary->cat < min || monetary->cat > max) \
|
||||||
|
&& min < max \
|
||||||
&& !be_quiet && !nothing) \
|
&& !be_quiet && !nothing) \
|
||||||
WITH_CUR_LOCALE (error (0, 0, _("\
|
WITH_CUR_LOCALE (error (0, 0, _("\
|
||||||
%s: value for field `%s' must be in range %d...%d"), \
|
%s: value for field `%s' must be in range %d...%d"), \
|
||||||
"LC_MONETARY", #cat, min, max))
|
"LC_MONETARY", #cat, min, max))
|
||||||
|
|
||||||
TEST_ELEM (int_frac_digits, -128, 127, -1);
|
TEST_ELEM (int_frac_digits, 1, 0, -1);
|
||||||
TEST_ELEM (frac_digits, -128, 127, -1);
|
TEST_ELEM (frac_digits, 1, 0, -1);
|
||||||
TEST_ELEM (p_cs_precedes, -1, 1, -1);
|
TEST_ELEM (p_cs_precedes, -1, 1, -1);
|
||||||
TEST_ELEM (p_sep_by_space, -1, 2, -1);
|
TEST_ELEM (p_sep_by_space, -1, 2, -1);
|
||||||
TEST_ELEM (n_cs_precedes, -1, 1, -1);
|
TEST_ELEM (n_cs_precedes, -1, 1, -1);
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc.
|
/* Copyright (C) 1996, 1997, 2002, 2007 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
|
||||||
|
|
||||||
@@ -51,15 +51,10 @@ logout (const char *line)
|
|||||||
bzero (ut->ut_host, sizeof ut->ut_host);
|
bzero (ut->ut_host, sizeof ut->ut_host);
|
||||||
#endif
|
#endif
|
||||||
#if _HAVE_UT_TV - 0
|
#if _HAVE_UT_TV - 0
|
||||||
if (sizeof (ut->ut_tv) == sizeof (struct timeval))
|
|
||||||
__gettimeofday ((struct timeval *) &ut->ut_tv, NULL);
|
|
||||||
else
|
|
||||||
{
|
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
__gettimeofday (&tv, NULL);
|
__gettimeofday (&tv, NULL);
|
||||||
ut->ut_tv.tv_sec = tv.tv_sec;
|
ut->ut_tv.tv_sec = tv.tv_sec;
|
||||||
ut->ut_tv.tv_usec = tv.tv_usec;
|
ut->ut_tv.tv_usec = tv.tv_usec;
|
||||||
}
|
|
||||||
#else
|
#else
|
||||||
ut->ut_time = time (NULL);
|
ut->ut_time = time (NULL);
|
||||||
#endif
|
#endif
|
||||||
|
@@ -44,15 +44,10 @@ logwtmp (const char *line, const char *name, const char *host)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if _HAVE_UT_TV - 0
|
#if _HAVE_UT_TV - 0
|
||||||
if (sizeof (ut.ut_tv) == sizeof (struct timeval))
|
struct timeval tv;
|
||||||
__gettimeofday ((struct timeval *) &ut.ut_tv, NULL);
|
__gettimeofday (&tv, NULL);
|
||||||
else
|
ut.ut_tv.tv_sec = tv.tv_sec;
|
||||||
{
|
ut.ut_tv.tv_usec = tv.tv_usec;
|
||||||
struct timeval tv;
|
|
||||||
__gettimeofday (&tv, NULL);
|
|
||||||
ut.ut_tv.tv_sec = tv.tv_sec;
|
|
||||||
ut.ut_tv.tv_usec = tv.tv_usec;
|
|
||||||
}
|
|
||||||
#else
|
#else
|
||||||
ut.ut_time = time (NULL);
|
ut.ut_time = time (NULL);
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1,3 +1,7 @@
|
|||||||
|
2007-07-26 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
|
* tst-locale2.c (useless): Add return statement.
|
||||||
|
|
||||||
2007-07-24 Jakub Jelinek <jakub@redhat.com>
|
2007-07-24 Jakub Jelinek <jakub@redhat.com>
|
||||||
|
|
||||||
* allocatestack.c (__nptl_setxid, __wait_lookup_done): Replace
|
* allocatestack.c (__nptl_setxid, __wait_lookup_done): Replace
|
||||||
|
Reference in New Issue
Block a user