2008-04-15 Ulrich Drepper <drepper@redhat.com>
[BZ #5209]
* sysdeps/unix/sysv/linux/times.c: New file.
[BZ #5381]
* nscd/nscd.h: Define enum in_flight, mem_in_flight, and
mem_in_flight_list variables. Add new parameter to mempool_alloc
prototype.
* nscd/mem.c (mempool_alloc): Take additional parameter. Initialize
appropriate mem_in_flight element.
(gc): Take allocations which have not yet been committed to the
database into account.
* nscd/cache.c (cache_add): Add new parameter to mempool_alloc call.
Reset mem_in_flight before returning.
* nscd/connections.c (nscd_run_worker): Initialize mem_in_flight and
cue it up in mem_in_flight_list.
* nscd/aicache.c: Adjust mempool_alloc call.
* nscd/grpcache.c: Likewise.
* nscd/hstcache.c: Likewise.
* nscd/initgrcache.c: Likewise.
* nscd/pwdcache.c: Likewise.
* nscd/servicescache.c: Likewise.
* nscd/Makefile (nscd-flags): Until ld is fixed, use -fpic instead
of -fpie.
* nscd/connections.c (handle_request): Provide better error message
in case SELinux forbids the service.
* version.h (VERSION): Bump to 2.8.90.
2008-04-07 Ulrich Drepper <drepper@redhat.com>
[BZ #6042]
* sysdeps/unix/sysv/linux/net/ethernet.h: Add a few more
ETHERTYPE_* definitions.
Patch partly by Aurelien Jarno <aurelien@aurel32.net>.
2007-11-07 Ulrich Drepper <drepper@redhat.com>
[BZ #5277]
* iconv/loop.c (STANDARD_TO_LOOP_ERR_HANDLER): If conversion failed
because output buffer is too small break, don't loop.
* iconvdata/Makefile (tests): Add bug-iconv6.
* iconvdata/bug-iconv6.c: New file.
2007-08-24 Ulrich Drepper <drepper@redhat.com>
[BZ #3842]
* locales/ru_RU: Use U00A0 instead of U2002 for thousands separator.
The latter might be more correct but usually cannot be displayed.
January, February, and September to December, mon for January,
February, September, and December, am_pm, and name_*.
Patch by Amitakhya Phukan <aphukan@redhat.com>.
2005-01-16 Denis Barbier <barbier@linuxfr.org>
[BZ #672]
* locales/ca_ES: Replace current collation rules by including
iso14651_t1 and adding extra rules if needed. There should be
no noticeable changes in sorted text. only ligatures and
ignoreable characters have modified weights.
* locales/da_DK: Likewise.
* locales/en_CA: Likewise.
* locales/es_US: Likewise.
* locales/fi_FI: Likewise.
* locales/nb_NO: Likewise.
[BZ #672]
* locales/iso14651_t1: Simplified. Extended.
* libio/stdio.h: Define struct _IO_FILE in global namespace.
* setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
Remove using for __jmp_buf_tag.
* locale/locale.h (struct lconv): Also define in std namespace.
* wcsmbs/wchar.h: Move using declaration for tm out of namespace.
* sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
and 64-bit operations.
[BZ #4040]
* sysdeps/i386/i486/bits/atomic.h: One more change, this time for
16-bit operations.
2007-02-16 Ulrich Drepper <drepper@redhat.com>
[BZ #3885]
* locales/i18n: Updates for Unicode 5.0.
* charmaps/UTF-8: Likewise.
Patch by Pablo Saratxaga <pablo@walon.org>
* locales/sl_SI: Slovenia joined the Euro zone.
2007-01-12 Gwenole Beauchesne <gbeauchesne@mandriva.com>
[BZ #3884]
* localedata/locales/sl_SI: Slovenia joined the Euro zone.
Fix negative number format.
2007-02-16 Ulrich Drepper <drepper@redhat.com>
[BZ #3851]
* locales/bn_BD: Fix full name of January and February.
Patch by Jamil Ahmed <jamil@bengalinux.org>.
2006-12-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
(ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
* sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
(__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
ENOTTY.
* io/Makefile: Add rules to build and run tst-ttyname_r test.
* io/tst-ttyname_r.c: New test.
2006-10-12 Richard Sandiford <richard@codesourcery.com>
[BZ #3352]
* elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
and use memcpy() if it does.
2006-10-06 Ulrich Drepper <drepper@redhat.com>
* po/pl.po: Update from translation team.
* nscd/nscd.c (main): Fix typo in message.
Patch by Jakub Bogsz <qboosh@pld-linux.org>.
2006-06-17 Joseph S. Myers <joseph@codesourcery.com>
[BZ #2592]
* math/libm-test.inc (lrint_test_tonearest): New function.
(lrint_test_towardzero): New function.
(lrint_test_downward): New function.
(lrint_test_upward): New function.
(main): Run these new tests.
* sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
of values near to 0.
(two52): Use double not long double.
* sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
* sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
(two23): Use float not double.
* sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
(two23): Use float not double.
* sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
* sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
2006-08-24 Ulrich Drepper <drepper@redhat.com>
[BZ #2734]
* sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
as in the x86-64 code to use bswap.
* locales/or_IN (mon): Fix spelling of May.
* locales/ml_IN (day): Fix spelling of Sunday, Monday, Wednesday.
(abmon): Fix spelling of March to October.
(mon): Fix spelling of March, April, June, August to December.
Patches by Mayank Jain <majain@redhat.com>.
2006-08-03 Ulrich Drepper <drepper@redhat.com>
* rt/Makefile (tests): Add tst-clock2.
* rt/tst-clock2.c: New file.
[BZ #2978]
* resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
function and its parameters and pass it to new thread.
(__gai_notify): Add support for alternative waiting for completion.
* resolv/gai_suspend.c (gai_suspend): Add support for alternative
waiting for completion.
* resolv/getaddrinfo_a.c: Likewise.
* resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
waiting for completion is used.
* resolv/gai_misc.c: Allow overwriting code to start helper thread.
* resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
* resolv/gai_error.c: Likewise.
* resolv/gai_sigqueue.c: Likewise.
* hurd/getdport.c (__detdport): Don't return EBADF; instead set
errno to EBADF and return MACH_PORT_NULL.
* posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
2006-05-02 Ulrich Drepper <drepper@redhat.com>
[BZ #2632]
* nscd/connections.c (nscd_init): Correct initialization of
in-memory database structure.
* iconvdata/utf-7.c: Don't require more than one character after
2006-01-07 Eddy Petrisor <eddy.petrisor@gmail.com>
* locales/ro_RO: The sorting order of the letters a circumflex and
a with breve was corrected according to the Romanian alphabet.
Capital A with breve is in no longer used within day names.
Romanian post-92 writing rules are used within day and abday fields.
Fixed the international currency symbol because after the
denomination (starting with the 1st of July 2005), the symbol is
RON (1 RON = 10000 ROL).
Grouping sign for thousands, which is ".", is used for Romanian.
Numbers are grouped in sets of 3 digits.
The short date format is %d.%m.%Y for Romanian in Romania.
The year is placed before the time in date_fmt.
%Z was replaced with %z in date formats because %Z is not
used nor widely known in Romania, and Romania uses daylight saving
and the difference is more obvious this way.
abday for Saturday was changed because i> looks bad and is
incorrect according to post-92 writing rules.
In Romanian months' names are not capitalized. The same goes for
the days' names.
A4 is the prefered paper type and metric system is used;
FIXMEs were removed.
country_name, country_car, lang_name and lang_ab were added.
name_mr, name_mrs, name_miss were added; name_ms omitted as
there is no proper form it in Romanian.
An explanation related to the cedilla/comma issue and
the reson why the transliteration is a good idea was added.
The default encoding was changed to UTF-8 because this is the
only encoding that supports all Romanian specific symbols and
dicritics.
The name format was corrected while salutation abbreviation was
omitted.
postal_fmt was corrected according to the Romanian style of
writing this information.
* SUPPORTED (SUPPORTED-LOCALES): Add el_CY.ISO-8859-7 and el_CY.UTF-8.
[BZ #531]
* locales/el_CY: New file.
* locales/hu_HU: Better month name abbreviations.
* SUPPORTED (SUPPORTED-LOCALES): Add hy_AM.UTF-8 and hy_AM.ARMSCII-8.
* locales/ru_RU: Use U2002 for thousands_sep and mon_throusands_sep.
* stdlib/strfmon_l.c (__vstrfmon_l): Fix handling of ! modifier.
* localedata/Makefile: Add rules to build and run tst-strfmon1.
* localedata/tst-strfmon1.c: New file.
__alloc_dir.
(__alloc_dir): Only close descriptor on error if new parameter is true.
* sysdeps/unix/fdopendir.c (fdopendir): Pass extra argument to
__alloc_dir. Don't close fd on error.
* include/dirent.h (__alloc_dir): Adjust prototype.
* include/sys/mman.h (__mremap): Add ellipsis.
* malloc/memusage.c: Adjust mremap wrapper for optional additional
parameter.
* manual/stdio.texi (Hook Functions): Correct type of position
parameter of seeker and fix fallout of the change in the text.
* wcsmbs/tst-mbrtowc2.c: New file.
* wcsmbs/Makefile (tests): Add tst-mbrtowc2.
2005-09-25 Ulrich Drepper <drepper@redhat.com>
[BZ #714]
* iconv/loop.c [!STORE_REST] (SINGLE): Correctly record number of
left-over bytes and store them correctly.
* iconvdata/tst-iconv6.c: New file.
* iconvdata/Makefile (tests): Add tst-iconv6.
Update.
2004-12-19 Andreas Jaeger <aj@suse.de>
[BZ #560]
* inet/netinet/in.h: Use __interface_addr instead of __interface.
[BZ #573]
* sunrpc/xcrypt.c (passwd2des_internal): Make it hidden instead of
internal linkage.
Update.
2004-05-18 Petter Reinholdtsen <pere@hungry.com>
* locales/sl_SI [LC_TIME]: Correct d_fmt date format from
'22.06.2003' to '22. 06. 2003'. Change requested from Aleks
Reinhardt, and approved by the locale author Borka
Jerman-Blazic. [BZ #163]
Update.
2004-05-15 Petter Reinholdtsen <pere@hungry.com>
* locales/it_IT: Change currency formatting from none to two
fraction dicits, as Italy now uses the Euro. Patch from Marko
Djukic. [BZ #111]
* stdio-common/_i18n_number.h: Support printing localized decimal
point and thousand separator.
* wctype/wctrans.c: Add __wctrans alias.
* include/wctype.h: Declare __wctrans.
Based on a patch by Hamed Malek.
2003-12-31 Bruno Haible <bruno@clisp.org>
* iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
(to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
(from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
(BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
0x00 0x20. Don't map U+2500..U+25E3.
* locales/hr_HR: Correct the email address of Tomislav Vujec.
* locales/ja_JP: Document EUC-JP as the recommended charset.
* locales/ko_KR: List Won-kyu Park as the author/contact for the
locale.
* locales/ru_UA: Correct the email address of Denis V. Dmitrienko.
2003-11-30 Petter Reinholdtsen <pere@hungry.com>
* stdlib/strfmon.c: Correct formatting of international currency
values. The international currency formatting should prefer the
int_* values if they are set for a locale, and use the domestic
values if the int_* values are unset.
2003-12-03 Ulrich Drepper <drepper@redhat.com>
* locale/programs/locarchive.c (enlarge_archive): Print size info
only in verbose mode.
* locale/iso-3166.def: Three letter code of Romania changed.
2003-06-22 Petter Reinholdtsen <pere@hungry.com>
* locale/program/ld-monetary.c: Only check the first three
characters in int_curr_symbol against ISO-4217, to make the
separator character used by a locale independent of the content
in iso-4217.def.
* locale/iso-4217.def: Remove the space character from all
currency values to get the new test code in ld-monetary.c working.
* locales/aa_DJ: New file.
* locales/aa_ER: New file.
* locales/aa_ER@saaho: New file.
* locales/aa_ET: New file.
* locales/byn_ER: New file.
* locales/gez_ER: New file.
* locales/gez_ER@abegede: New file.
* locales/gez_ET: New file.
* locales/gez_ET@abegede: New file.
* locales/om_ET: New file.
* locales/om_KE: New file.
* locales/sid_ET: New file.
* locales/so_DJ: New file.
* locales/so_ET: New file.
* locales/so_KE: New file.
* locales/so_SO: New file.
* locales/tig_ER: New file.
2003-10-01 Ulrich Drepper <drepper@redhat.com>
* locales/uz_UZ: New version by Mashrab Kuvatov.
* locales/uz_UZ@cyrillic: New file. Patch by Mashrab Kuvatov.
2003-09-01 Thorsten Kukuk <kukuk@suse.de>
* nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
NSS_STATUS_SUCCESS if entry was found.
(getspent_next_file): Store user in blacklist after entry
was found, use innetgr.
2003-09-01 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
* sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
computation for TCB_AT_TP. Support l_firstbyte_offset != 0 for
DTV_AT_TP, optimize.
2003-07-02 Ulrich Drepper <drepper@redhat.com>
* locales/lo_LA: Update collation info for U0EAF and U0EC6.
Update era_t_fmt, era_d_t_fmt, country_name, and lang_name fields.
Patch by Anousak Souphavanh <anousak@muanglao.com>.
2003-06-25 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
result to long int so that extensions to long long int work.
Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
2003-06-19 Jakub Jelinek <jakub@redhat.com>
* elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
* sysdeps/generic/dl-cache.h (add_system_dir): Define.
* sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
dl-cache.h.
* sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
* sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
* sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
* sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
2003-06-16 Ulrich Drepper <drepper@redhat.com>
* elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
computation so that prelinking wroks.
* inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
2003-05-29 Jim Meyering <jim@meyering.net>
* time/strftime.c (my_strftime) [!defined _NL_CURRENT
&& HAVE_STRFTIME]: Use underlying_strftime for %r.
Suggested by Daniel Yacob <locales@geez.org>.
2003-04-15 Jakub Jelinek <jakub@redhat.com>
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
against local symbol in conflict processing.
2003-04-05 Petter Reinholdtsen <pere@hungry.com>
* locales/sr_YU [LC_MONETARY]: Change int_curr_symbol from 'YUN'
to 'YUM' to match changes commited to ISO-4217 2002-02-13 and get
the locale building again.
* locales/sr_YU@cyrillic: Likewise.
2003-03-17 Ulrich Drepper <drepper@redhat.com>
* localedata/en_ZA: hanged %x for LC_TIME to use dd/mm/ccyy.
Added ^ to LC_MESSAGES regex "^[yY].*".
Confirmed LC_PAPER adn LC_MEASUREMENT settings.
Added country and language names to LC_ADDRESS.
Added missing info for LC_TELEPHONE.
Patch by Dwayne Bailey <dwayne@obsidian.co.za>.
2002-09-10 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regexec.c (build_trtable): Fix the destination of
newline to prevent wrong states from overwriting.
Append break statements to optimization.
2002-09-10 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c: Wrap #include wchar.h and wctype.h in #if.
(build_range_exp): Add castings to strlen invocations.
(build_collating_symbol): Restore the type of characters from "char"
to "unsigned char", and supplement castings.
(build_collating_symbol): Likewise.
(build_equiv_class): Likewise.
(build_charclass): Likewise.
(seek_collating_symbol_entry): Likewise.
(parse_bracket_exp): Likewise.
(build_word_op): Supplement a casting.
* posix/regex_internal.c: Wrap #include wchar.h and wctype.h in #if.
(re_string_allocate): Fix castings.
(re_string_construct): Likewise.
(re_string_construct_common): Likewise.
(re_string_realloc_buffers): Likewise.
(build_wcs_buffer): Likewise.
(build_wcs_upper_buffer): Likewise.
(re_string_skip_chars): Likewise.
(re_string_reconstruct): Likewise.
* posix/regex_internal.h: Restore the type of characters in
re_string_t and bracket_elem_t from "char" to "unsigned char".
(re_string_elem_size_at): Fix castings.
* posix/regexec.c: Wrap #include wchar.h and wctype.h in #if.
(transit_state_bkref_loop): Restore the type of characters from
"char" to "unsigned char", and append a cast to "char*" pointer in
array subscript.
(check_node_accept_bytes): Likewise.
(find_collation_sequence_value): Likewise.
* locale/iso-639.def: Add entry for Ganda.
* locale/programs/ld-address.c (DEFINE_LANGUAGE_CODE3): New
definition.
(address_finish): Handle entries with two letter ISO 639 code.
* iconvdata/Makefile: Recreate gconv-modules.cache file in target
expected result. Reported by Stephen L Moshier <steve@moshier.net>.
* iconvdata/JISX0213.TXT: New file.
* iconvdata/jisx0213.h: New file.
* iconvdata/jisx0213.c: New file.
* iconvdata/euc-jisx0213.c: New file.
* iconvdata/shift_jisx0213.c: New file.
* iconvdata/gconv-modules (EUC-JISX0213, SHIFT_JISX0213): New modules.
* iconvdata/EUC-JISX0213.precomposed: New file.
* iconvdata/SHIFT_JISX0213.precomposed: New file.
* iconvdata/SHIFT_JISX0213.irreversible: New file.
* iconvdata/tst-table-to.c (main): Make it work for encodings for
which the "to" direction is stateful.
* iconvdata/tst-tables.sh: Add EUC-JISX0213, SHIFT_JISX0213.
* iconvdata/Makefile (modules): Add libJISX0213, EUC-JISX0213,
SHIFT_JISX0213.
(libJISX0213-routines): New variable.
(LDFLAGS-EUC-JISX0213.so, LDFLAGS-SHIFT_JISX0213.so): New variables.
(EUC-JISX0213.so, SHIFT_JISX0213.so): Depend on libJISX0213.so.
(LDFLAGS-libJISX0213.so): New variable.
(distribute): Add JISX0213.TXT, EUC-JISX0213.precomposed,
SHIFT_JISX0213.precomposed, SHIFT_JISX0213.irreversible,
jisx0213.c, jisx0213.h, euc-jisx0213.c, shift_jisx0213.c.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/big5hkscs.c (big5hkscs_to_ucs): Change element type to
uint32_t. Update to Unicode 3.2.
(from_ucs4, from_ucs4_idx): Update to Unicode 3.2.
(BODY for TO_LOOP): Handle the ASCII range specially.
* iconvdata/BIG5HKSCS.irreversible: Add one more entry.
* iconvdata/testdata/BIG5HKSCS: Remove a character.
* iconvdata/testdata/BIG5HKSCS..UTF-8: Regenerated.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/gb18030.c (__twobyte_to_ucs, __fourbyte_to_ucs,
__ucs_to_gb18030_tab1, __ucs_to_gb18030_tab2): Update to Unicode 3.2.
2002-04-15 Bruno Haible <bruno@clisp.org>
* iconvdata/cns11643.h (__cns11643_from_ucs4p2c_tab): New declaration.
(ucs4_to_cns11643): Update.
* iconvdata/cns11643.c: Update to Unicode 3.2.
(__cns11643l2*_to_ucs4_tab, __cns11643_from_ucs4p0_tab,
__cns11643_from_ucs4p2_tab): Regenerated.
(__cns11643_from_ucs4p2c_tab): New array.
* iconvdata/EUC-TW.irreversible: Remove two entries.
2002-04-15 Bruno Haible <bruno@clisp.org>
* locale/C-translit.h.in: Update to Unicode 3.2.
Add <U2047>, <U205F>..<U2063>, <U2145>..<U2149>, <U2A74>..<U2A76>,
<U30A0>, <U3251>..<U325F>, <U32B1>..<U32BF>, <UFE00>..<UFE0F>.
2002-04-15 Bruno Haible <bruno@clisp.org>
* po/da.po: Update from translation team.
* locale/categories.def: Fix typo [PR libc/2948].
* po/Makefile (BROKEN_LINGUAS): Works with current gettext
[PR libc/2949].
* locale/iso-4217.def: Update from official version [PR libc/2950].
* glibcbug.in: Honor TMPDIR [PR libc/2951].
* locale/programs/ld-collate.c (collate_finish): Bail out with a
message if input is too confusion instead of using assert.
(collate_read): Don't crash on unknown symbol [PR libc/2952].
Patches by Alastair McKinstry <alastair@pdd.3com.com>.
2002-02-09 Richard Henderson <rth@twiddle.net>
* sysdeps/generic/ldsodefs.h (struct rtld_global): Also include
_dl_cpuclock_offset if HP_SMALL_TIMING_AVAIL.
2002-02-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/dl-environ.c (unsetenv): Clear cnt before use.
* po/ca.po: Update from translation team.
* po/sk.po: Likewise.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/unix/sysv/linux/s390/profil-counter.h: Move/copy to ...
* sysdeps/unix/sysv/linux/s390/s390-32/profil-counter.h: ... here,
remove high order bit from the program counter.
* sysdeps/unix/sysv/linux/s390/s390-64/profil-counter.h: ... and here.
2001-12-19 Martin Schwidefsky <schwidefsky@de.ibm.com>
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
unnecessary code and add missing reloc types.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Add empty
case for reloc type R_390_NONE.
2001-12-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/glob.c (glob): Return only pattern if nothing
matches and GLOB_NOCHECK is set.
* posix/globtest.sh: Correct expected result for NOCHECK test.
* po/ca.po: Update from translation team.
2001-11-26 Ulrich Drepper <drepper@redhat.com>
* locales/de_CH: Define decimal point to '.' and thousands
separator to ' '. Patch by Niklaus Giger <ngiger@mus.ch>.
2001-08-04 Ulrich Drepper <drepper@redhat.com>
* libio/genops.c (_IO_unbuffer_write): Force streams in narrow
orientation so that conversion modules aren't used anymore.
* malloc/set-freeres.c: Call _IO_cleanup before running subfreeres
functions to avoid using wide streams afterwards.
* iconvdata/Makefile: Add rules to build GEORGIAN-PS and
GEORGIAN-ACADEMY.
* iconvdata/georgian-ps.c: New file.
* iconvdata/georgian-academy.c: New file.
* iconvdata/gconv-modules: Add entries for GEORGIAN-PS and
GEORGIAN-ACADEMY.
* iconvdata/tst-tables.sh: Add GEORGIAN-PS and GEORGIAN-ACADEMY.
2001-07-19 Jakub Jelinek <jakub@redhat.com>
* locales/es_PR (LC_PAPER): Change to Letter.
(LC_MEASUREMENT): Change to 2.
* locales/es_US (LC_PAPER): Change to Letter.
(LC_MEASUREMENT): Change to 2.
2001-06-04 Bruno Haible <haible@clisp.cons.org>
* iconv/loop.c (UNICODE_TAG_HANDLER): New macro.
* iconv/gconv_simple.c (__gconv_transform_internal_ascii): Invoke
UNICODE_TAG_HANDLER.
(__gconv_transform_internal_ucs2): Likewise.
(__gconv_transform_internal_ucs2reverse): Likewise.
* iconvdata/8bit-gap.c (BODY for TO_LOOP): Invoke UNICODE_TAG_HANDLER.
* iconvdata/8bit-generic.c (BODY for TO_LOOP): Likewise.
* iconvdata/ansi_x3.110.c (BODY for TO_LOOP): Likewise.
* iconvdata/big5.c (BODY for TO_LOOP): Likewise.
* iconvdata/big5hkscs.c (BODY for TO_LOOP): Likewise.
* iconvdata/cp1255.c (BODY for TO_LOOP): Likewise.
* iconvdata/cp1258.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-cn.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-jp.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-kr.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-tw.c (BODY for TO_LOOP): Likewise.
* iconvdata/gbk.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm930.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm932.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm933.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm935.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm937.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm939.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm943.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso646.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso8859-1.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso_6937.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso_6937-2.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-cn.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-cn-ext.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-kr.c (BODY for TO_LOOP): Likewise.
* iconvdata/johab.c (BODY for TO_LOOP): Likewise.
* iconvdata/sjis.c (BODY for TO_LOOP): Likewise.
* iconvdata/t.61.c (BODY for TO_LOOP): Likewise.
* iconvdata/uhc.c (BODY for TO_LOOP): Likewise.
* iconvdata/unicode.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-jp.c (TAG_none, TAG_language, TAG_language_j,
TAG_language_ja, TAG_language_k, TAG_language_ko, TAG_language_z,
TAG_language_zh, CURRENT_TAG_MASK): New enum values.
(EMIT_SHIFT_TO_INIT): Don't emit an escape sequence if ASCII_set
is already selected but set2 or tag are set.
(conversion): New enum type.
(cvlist_t): New type.
(CVLIST, CVLIST_FIRST, CVLIST_REST): New macros.
(conversion_lists): New array.
(BODY for TO_LOOP): Keep track of Unicode 3.1 language tag. If "ja",
prefer conversion to Japanese character sets. If "zh", prefer
conversion to GB2312. If "ko", prefer conversion to KSC5601. Small
optimizations.
(INIT_PARAMS): Add tag.
(UPDATE_PARAMS): Add tag.
2001-06-04 Bruno Haible <haible@clisp.cons.org>
* locale/programs/locfile.c (write_locale_data): Before creat(),
unlink the file, to avoid crashing the processes that mmap it. Change
a double slash to a single slash. Free fname in case of error return.
2001-06-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/fpu/s_frexpl.S (__frexpl): Mostly revert 2000-12-03
changes, do the special handling for denormal numbers, not for
normalized numbers (patch by <trevin@xmission.com>).
* math/test-misc.c (main): Test frexpl with denormal arguments.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (llround_test): Add two new llround tests.
* sysdeps/ieee754/ldbl-96/s_llroundl.c (__llroundl): Don't allow
overflow when rounding away from zero.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/Makefile (libm-calls): Add e_log2, w_log2, remove s_log2.
* math/math_private.h (__ieee754_log2, __ieee754_log2f,
__ieee754_log2l): New prototypes.
* sysdeps/generic/w_log2.c: New file.
* sysdeps/generic/w_log2f.c: New file.
* sysdeps/generic/w_log2l.c: New file.
* sysdeps/generic/s_log2l.c: Move...
* sysdeps/generic/e_log2l.c: ...to here. Rename to __ieee754_log2l.
* sysdeps/ieee754/k_standard.c (__kernel_standard): Handle log2(0)
and log2(x < 0).
* sysdeps/i386/fpu/s_log2.S: Move...
* sysdeps/i386/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
* sysdeps/i386/fpu/s_log2f.S: Move...
* sysdeps/i386/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
* sysdeps/i386/fpu/s_log2l.S: Move...
* sysdeps/i386/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
* sysdeps/m68k/fpu/s_log2.S: Move...
* sysdeps/m68k/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
* sysdeps/m68k/fpu/s_log2f.S: Move...
* sysdeps/m68k/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
* sysdeps/m68k/fpu/s_log2l.S: Move...
* sysdeps/m68k/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
* sysdeps/ieee754/dbl-64/s_log2.c: Move...
* sysdeps/ieee754/dbl-64/e_log2.c: ...to here. Rename to
__ieee754_log2.
* sysdeps/ieee754/flt-32/s_log2f.c: Move...
* sysdeps/ieee754/flt-32/e_log2f.c: ...to here. Rename to
__ieee754_log2f.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/w_exp2.c (u_threshold): Lower threshold so that
even arguments which result in denormalized exp2 are accepted.
(__exp2): Arguments equal to u_threshold already result into
underflow.
* sysdeps/generic/w_exp2f.c (u_threshold, __exp2f): Likewise.
* sysdeps/generic/w_exp2l.c (u_threshold, __exp2l): Likewise.
* sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Lomark was too
low, with corrected lowmark use greaterequal, not greater.
* sysdeps/ieee754/flt-32/e_exp2f.c (__ieee754_exp2f): Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (ilogb_test): Test that ilogb(+-Inf) == INT_MAX.
* sysdeps/i386/fpu/s_ilogb.S (__ilogb): Return INT_MAX for +-Inf.
* sysdeps/i386/fpu/s_ilogbf.S (__ilogbf): Likewise.
* sysdeps/i386/fpu/s_ilogbl.S (__ilogbl): Likewise.
* sysdeps/ieee754/dbl-64/s_ilogb.c (__ilogb): Likewise.
* sysdeps/ieee754/flt-32/s_ilogbf.c (__ilogbf): Likewise.
* sysdeps/ieee754/ldbl-128/s_ilogbl.c (__ilogbl): Likewise.
* sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/w_coshl.c (__coshl): Test if finite argument
gave non-finite result instead of using constant in generic
version.
* sysdeps/generic/w_coshf.c (__coshf): Likewise.
* sysdeps/generic/w_cosh.c (__cosh): Likewise.
* sysdeps/generic/w_exp10.c (o_threshold, u_threshold): Remove.
(__exp10): Test if finite argument gave non-finite result.
* sysdeps/generic/w_exp10f.c (o_threshold, u_threshold, __exp10f):
Likewise.
* sysdeps/generic/w_exp10l.c (o_threshold, u_threshold, __exp10l):
Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-96/e_coshl.c (__ieee754_coshl): Fix
overflow threshold constant (log(LDBL_MAX)+M_LN2l).
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (idx_table): New struct type.
(idx_table_init, idx_table_get, idx_table_add): New functions.
(MAX_CHARNAMES_IDX): Remove macro.
(locale_ctype_t): Change type of charnames_idx field.
(ctype_startup): Change initialization of charnames_idx field.
(find_idx): Use idx_table_get and idx_table_add for speed.
* locale/programs/charmap.c (charmap_new_char): Fix ucs4 value
computation of characters in a range.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* iconvdata/gb18030.c (__fourbyte_to_ucs1): Add mappings for <U03F4>,
<U03F5>.
(__ucs_to_gb18030_tab1): Likewise.
(BODY for FROM_LOOP): Add mapping for <U00010000>..<U0010FFFF>.
(BODY for TO_LOOP): Likewise.
* iconvdata/tst-table-charmap.sh: Update for charmaps containing
<U00xxxxxx> syntax.
* iconvdata/tst-table-from.c (bmp_only): New variable.
(utf8_decode): If bmp_only, don't return characters outside Unicode
plane 0.
(main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
a conversion line if utf8_decode returns NULL.
* iconvdata/tst-table-to.c (main): When testing encodings other than
UTF-8 and GB18030, loop upto U+30000 instead of U+10000. Use UTF-8
instead of UCS-2 as input.
* iconvdata/tst-table.sh: For GB18030, use only the part < 0x10000
of the charmap.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* iconvdata/cns11643l1.c: Update to Unicode 3.1.
(__cns11643l1_to_ucs4_tab): Regenerated.
(__cns11643l1_from_ucs4_tab12): Regenerated.
* iconvdata/cns11643.c: Update to Unicode 3.1.
(__cns11643l14_to_ucs4_tab): Remove array.
(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New arrays.
(__cns11643_from_ucs4p0_tab): Renamed from __cns11643_from_ucs4_tab.
(__cns11643_from_ucs4p2_tab): New array.
* iconvdata/cns11643.h (__cns11643l14_to_ucs4_tab): Remove declaration.
(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New declarations.
(cns11643_to_ucs4): Treat planes 3, 4, 5, 6, 7, 15 instead of 14.
(__cns11643_from_ucs4_tab): Remove declaration.
(__cns11643_from_ucs4p0_tab, __cns11643_from_ucs4p2_tab): New
declarations.
(ucs4_to_cns11643): Update for new arrays. Treat U+3400..U+4DFF and
U+20000..U+2A6D6.
* iconvdata/cns11643l2.h (__cns11643_from_ucs4_tab): Remove
declaration.
(__cns11643_from_ucs4p0_tab): New declaration.
(ucs4_to_cns11643l2): Update for new arrays.
* iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): Handle planes
3 to 7.
(BODY for TO_LOOP): Handle planes 3 to 7, instead of plane 14.
* iconvdata/EUC-TW.irreversible: New file.
* iconvdata/tst-table.sh: Use it.
* iconvdata/Makefile (distribute): Add CP1255.irreversible,
CP1258.irreversible, EUC-TW.irreversible.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* locale/C-translit.h.in: Add transliterations for new Unicode 3.1
mathematical symbols.
2001-05-25 Bruce Mitchener <bruce@cubik.org>
* manual/ctype.texi: Minor fix.
* manual/install.texi: Likewise.
* manual/startup.texi: Likewise.
* manual/examples/dir.c: Use perror() rather than puts().
2001-05-25 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Put stuff following
#endif directive inside a comment to avoid compiler warnings.
2001-05-25 Philipp Thomas <pthomas@suse.de>
* nis/nis_print.c (nis_nstype2str): Don't mark names of
naming services for translation, only UNKNOWN needs it.
Add comment to prevent it for the future.
2001-05-25 Joseph S. Myers <jsm28@cam.ac.uk>
* misc/sys/cdefs.h (__restrict_arr): Define appropriately for GCC
3.1 and non-GCC C99 compilers.
Patch by "Hasbullah Pit (sebol)" <sebol@ikhlas.com>.
2001-05-14 Andreas Jaeger <aj@suse.de>
* locales/ms_MY: Fix entries for Tue and Wednesday.
Patch by "Hasbullah Pit (sebol)" <sebol@ikhlas.com>.
2001-02-18 Mark Kettenis <kettenis@gnu.org>
* malloc/mtrace.c [USE_IN_LIBIO]: Define fopen as _IO_fopen64.
(mtrace): Revert 2001-02-13 patch: use fopen instead of fopen64.
2001-02-17 H.J. Lu <hjl@gnu.org>
* sysdeps/unix/sysv/linux/ia64/clone2.S: Use clone2 and don't use
scratch registers across the system call.
2001-02-16 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-address.c (address_finish): Add 'S' to allow
formats for postal_fmt.
2001-02-16 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/alpha/syscalls.list (ftruncate): Add
__ftruncate64 alias.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (ftruncate):
Likewise.
2001-02-15 David Mosberger <davidm@hpl.hp.com>
* sysdeps/unix/sysv/linux/ia64/__longjmp.S (__longjmp): No need to
do "loadrs". Writing to bspstore already takes care of
invalidating the "clean" partition.
2000-11-09 Ulrich Drepper <drepper@redhat.com>
* version.h (VERSION): Bump to 2.2.
(RELEASE): Set to stable.
* posix/Makefile (tst-dir-ARGS): Fix problem with compiling in
source directory.
2000-11-08 Ulrich Drepper <drepper@redhat.com>
* iconvdata/euc-kr.c (euckr_from_ucs4): Map 0x20a9 to \xa3dc.
(BODY from direction): Remove special handling of \x5c.
* iconvdata/EUC-KR.irreversible: Adjust for this change.
* iconvdata/testdata/EUC-KR..UTF8: Likewise.
Reported by Jungshik Shin <jshin@pantheon.yale.edu>.
2000-11-03 Bruno Haible <haible@clisp.cons.org>
* locales/translit_neutral: Add more entries. Mostly from Markus Kuhn.
* locales/translit_compat: Add a few ligatures.
* locales/translit_combining: Add a few plain ASCII alternatives.
* locales/translit_fraction: Likewise. Surround with spaces.
* posix/runtests.c (main): Don't use exit() to avoid warning with
broken compilers.
* string/bug-strncat1.c: Undefine __USE_STRING_INLINES before
defining it again to avoid warning.
* string/bug-strpbrk1.c: Likewise.
* string/bug-strspn1.c: Likewise.
2000-10-29 Bruno Haible <haible@clisp.cons.org>
* locale/C-translit.h.in: Include more rules from translit_neutral.
Remove a few German and Danish specific rules.
* locale/gen-translit.pl: Avoid an error when printing a string
containing a '%' character.
* locale/C-translit.h: Regenerated.
* intl/translit.po: Choose different translations.
* intl/tst-translit.c: Update.
2000-10-29 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (translit_include_t): New type.
(locale_ctype_t): Remove translit_copy_locale, translit_copy_repertoire
fields, add translit_include field.
(ctype_read): After seeing "translit_start" in ignore_content mode,
skip the entire translit section, not only one line. Remove dead test
for tok_translit_end. Enqueue include statements into a list.
Signal error if tok_eof seen before tok_translit_end.
(translit_flatten): New function.
(allocate_arrays): Call translit_flatten.
2000-10-30 Ulrich Drepper <drepper@redhat.com>
2000-10-29 Greg Louis <glouis@dynamicro.on.ca>
* posix/regex.h (__restrict_arr): Move definition out of #ifndef block.
Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
doesn't define __restrict_arr.
* manual/search.texi: Correct description if VISIT values.
Patch by Ben Collins <bcollins@debian.org>.
2000-10-26 Ulrich Drepper <drepper@redhat.com>
* locales/fa_IR: Fix many problems and change to use UTF-8.
Patch by Roozbeh Pournader <roozbeh@sharif.edu>.
* SUPPORTED: Add fa_IR.UTF-8.
2000-10-19 H.J. Lu <hjl@gnu.org>
* elf/Makefile (distribute): Add neededtest.c, neededobj1.c,
neededobj2.c and neededobj3.c.
(tests): Add neededtest.
(modules-names): Add neededobj1, neededobj2 and neededobj3.
($(objpfx)neededobj1.so): New target.
($(objpfx)neededobj2.so): Likewise.
($(objpfx)neededobj3.so): Likewise.
($(objpfx)neededtest): Likewise.
($(objpfx)neededtest.out): Likewise.
* elf/neededtest.c: New. Based on the bug report from
Allen Bauer <kylix_rd@hotmail.com>.
* elf/neededobj1.c: Likewise.
* elf/neededobj2.c: Likewise.
* elf/neededobj3.c: Likewise.
2000-10-20 Ulrich Drepper <drepper@redhat.com>
* elf/dl-close.c (_dl_close): Decrement reference counter for all
dependencies even if the DSO does not get unloaded.
* elf/dl-load.c (_dl_map_object_from_fd): Pass pointer to ELF header
to elf_machine_matches_host.
* sysdeps/alpha/dl-machine.h (elf_machine_matches_host): Parameter
is now pointer to ELF header.
* sysdeps/arm/dl-machine.h: Likewise.
* sysdeps/generic/dl-machine.h: Likewise.
* sysdeps/hppa/dl-machine.h: Likewise.
* sysdeps/i386/dl-machine.h: Likewise.
* sysdeps/ia64/dl-machine.h: Likewise.
* sysdeps/m68k/dl-machine.h: Likewise.
* sysdeps/mips/dl-machine.h: Likewise.
* sysdeps/mips/mips64/dl-machine.h: Likewise.
* sysdeps/powerpc/dl-machine.h: Likewise.
* sysdeps/s390/dl-machine.h: Likewise.
* sysdeps/sh/dl-machine.h: Likewise.
* sysdeps/sparc/sparc32/dl-machine.h: Likewise.
* sysdeps/sparc/sparc64/dl-machine.h: Likewise.
Patch by Martin Schwidefsksy <schwidefsky@de.ibm.com>.
2000-10-20 Jakub Jelinek <jakub@redhat.com>
* include/limits.h: Include bits/wordsize.h, use #if __WORDSIZE == 64
check instead of #ifdef __alpha__.
* include/bits/xopen_lim.h (WORD_BIT, LONG_BIT): Don't count on
INT_MAX, __INT_MAX__, LONG_MAX or __LONG_MAX__ being defined when
this is included.
* posix/wordexp-tst.sh (testout): Place output file in build
directory. Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
* iconvdata/euc-kr.c (euckr_from_ucs4): Handle U20a9.
(BODY from direction): Map \x5c to U20a9.
* iconvdata/testdata/EUC-KR..UTF8: Adjust to this change.
* iconvdata/EUC-KR.irreversible: New file.
2000-10-02 Jakub Jelinek <jakub@redhat.com>
* elf/nextmod1.c (failing_rtld_next_use): Ensure it is not tail call
optimized.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: New file.
2000-09-23 Bruno Haible <haible@clisp.cons.org>
* iconvdata/gbk.c (USE_PRIVATE_AREA): Define to 0.
(__gbk_to_ucs): Conditionalize private area mappings.
(__gbk_from_ucs4_tab9): Likewise.
(BODY for TO_LOOP): Likewise.
* iconvdata/testdata/GBK: Don't use characters not yet in Unicode.
* iconvdata/testdata/GBK..UTF-8: Likewise.
* iconvdata/tst-tables.sh: Enable GBK test.
2000-09-23 Bruno Haible <haible@clisp.cons.org>
* iconvdata/gbk.c (__gbk_to_ucs): Swap U+2014 and U+2015.
(__gbk_from_ucs4_tab4): Swap entries for U+2014 and U+2015.
(BODY for FROM_LOOP): Reject input > 0xFEA0, avoids out-of-bounds
array access.
* iconvdata/gbgbk.c (BODY for FROM_LOOP): Map 0xA844 to 0xA1AA.
* iconvdata/testdata/GBK..UTF8: Swap U+2014 and U+2015.
2000-09-23 Bruno Haible <haible@clisp.cons.org>
* iconvdata/johab.c (final_to_ucs): Fix typos.
(jamo_from_ucs_table): Likewise.
(BODY for FROM_LOOP): Map 0x5c to U+20A9. Reject ranges
0xD9E6..0xD9FE and 0xDEF2..0xDEFE.
(BODY for TO_LOOP): Map U+20A9 to 0x5c. Don't produce values in
the range 0xD9E6..0xD9FE.
* iconvdata/tst-tables.sh: Enable JOHAB testing.
2000-08-29 Ulrich Drepper <drepper@redhat.com>
* inet/rcmd.c (__checkhost_sa): If getnameinfo succeeds but the
names don't match don't return.
Patch by Olaf Kirch <okir@flash.lst.de>.