*** empty log message ***
[gnulib.git] / lib / ChangeLog
index 3213cf2..5c908d5 100644 (file)
@@ -1,3 +1,438 @@
+2000-08-03  Greg McGary  <greg@mcgary.org>
+
+       * regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
+       ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
+       (EXTEND_BUFFER): Use them.
+
+2000-08-01  Jim Meyering  <meyering@lucent.com>
+
+       * dirname.c (ISSLASH): Define.
+       (BACKSLASH_IS_PATH_SEPARATOR): Define.
+       (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
+       both `\' and `/' may be use as path separators.
+       Based on a patch from Prashant TR.
+
+2000-07-31  Paul Eggert  <eggert@twinsun.com>
+
+       * lib/quotearg.c (quotearg_n_options): Don't make the initial
+       slot vector a constant, since it might get modified.
+
+2000-07-31  Jim Meyering  <meyering@lucent.com>
+
+       * xmalloc.c: Use `virtual memory exhausted', not `Memory exhausted'.
+       * obstack.c (print_and_abort): Likewise.
+
+2000-07-30  Paul Eggert  <eggert@twinsun.com>
+
+       * quotearg.c (quotearg_n_options): Preallocate a slot 0
+       buffer, so that the caller can always quote one small
+       component of a "memory exhausted" message in slot 0.
+       From a suggestion by Jim Meyering.
+
+2000-07-30  Jim Meyering  <meyering@lucent.com>
+
+       * makepath.c (make_path): Quote the other instance, too.
+
+       * quotearg.c (N_STATIC_SLOTVECS): Define.
+       (STATIC_BUF_SIZE): Define.
+       (quotearg_n_options): Use only statically allocated storage when
+       N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
+       than STATIC_BUF_SIZE.
+
+2000-07-29  Jim Meyering  <meyering@lucent.com>
+
+       * diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
+       * dirname.c (dir_name): Likewise.
+
+       * basename.c (base_name): Use ISSLASH rather than comparing against `/'.
+
+       * dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
+       (dir_name): Assert that there are no trailing slashes.
+
+2000-07-18  Bruno Haible  <haible@clisp.cons.org>
+
+       * mbswidth.h (mbswidth): Add a flags argument.
+       (mbswidth): New declaration.
+       (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
+       * mbswidth.c (mbswidth): Add a flags argument.
+       (mbsnwidth): New function.
+
+2000-07-24  Jim Meyering  <meyering@lucent.com>
+
+       * mbswidth.c: Remove useless #else.  From Bruno Haible.
+
+2000-07-23  Paul Eggert  <eggert@twinsun.com>
+
+       * mbswidth.c (_XOPEN_SOURCE):
+       Don't define; this causes problems on Solaris 7.
+       (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
+
+2000-07-23  Paul Eggert  <eggert@twinsun.com>
+
+       * lib/quotearg.c:
+       Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
+       so that mbstate_t is always defined.
+
+       Do not inspect MB_LEN_MAX, since it's incorrectly defined to
+       be 1 in at least one GCC installation, and this configuration
+       error is likely to be common.  Ignoring MB_LEN_MAX hurts
+       performance on hosts that have mbrtowc but have only unibyte
+       locales, but I assume these hosts are rare.
+
+2000-07-23  Paul Eggert  <eggert@twinsun.com>
+
+       * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
+       <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
+       (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
+       (quotearg_buffer_restyled): If a unibyte locale, don't bother to
+       invoke multibyte primitives.
+
+2000-07-23  Jim Meyering  <meyering@lucent.com>
+
+       * basename.c (base_name): Add an assertion.
+
+2000-07-15  Bruno Haible  <clisp.cons.org>
+
+       * quotearg.c: When the system forces us to redefine mbstate_t,
+       shadow its mbsinit function.
+
+2000-07-16  Bruno Haible  <haible@clisp.cons.org>
+
+       * mbswidth.h: New file.
+       * mbswidth.c: New file.
+       * Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
+       (noinst_HEADERS): Add mbswidth.h.
+
+2000-07-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * config.charset: Add support for FreeBSD. Improve support for HP-UX
+       and IRIX 6.
+
+2000-07-15  Jim Meyering  <meyering@lucent.com>
+
+       * makepath.c: Include quote.h.
+       (make_path): Convert "`%s'" in format strings to "%s", and wrap each
+       corresponding argument in a `quote (...)' call.
+       Give better diagnostics.
+
+       * Makefile.am (libfetish_a_SOURCES): Add quote.c.
+       (noinst_HEADERS): Add quote.h.
+
+       * quote.c (quote, quote_n): New file.  Two functions taken verbatim
+       from tar's src/misc.c.
+       * quote.h: New file.  Prototypes for same.
+
+2000-07-10  Paul Eggert  <eggert@twinsun.com>
+
+       From a suggestion by Bruno Haible.
+       * quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
+       Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
+       to decide whether to define the BeOS workaround macro;
+       this adjusts to the change to AC_MBSTATE_T.
+
+2000-07-13  Paul Eggert  <eggert@twinsun.com>
+
+       * quotearg.h (enum quoting style): New enum clocale_quoting_style.
+
+       * quotearg.c: (quoting_style_args, quoting_style_vals,
+       quotearg_buffer_restyled): Add support for
+       clocale_quoting_style.  Undo previous change to
+       locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
+       and "{RIGHT QUOTATION MARK}" msgids.
+
+2000-07-05  Paul Eggert  <eggert@twinsun.com>
+
+       The old behavior of quoting `like this' doesn't look good with
+       newer, ISO-style fonts.  See:
+       http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
+
+       Instead, quote "like this" by default.  Let the translator
+       tailor the locale-specific quoting behavior by providing
+       translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
+
+       * quotearg.c (N_): New macro.
+       (gettext_default): New function.
+       (quotearg_buffer_restyled): Use
+       gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
+       gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
+
+2000-07-09  Jim Meyering  <meyering@lucent.com>
+
+       * Most files: Update copyright dates to include 2000.
+
+2000-07-08  Jim Meyering  <meyering@lucent.com>
+
+       * xgethostname.c (ENAMETOOLONG): Define to an unlikely value
+       if not defined.
+       (xgethostname): Remove now-unnecessary #ifdef.
+       Move declaration of `err' into loop where it's used.
+
+2000-07-05  Bruno Haible  <haible@clisp.cons.org>
+
+       * xgethostname.c (xgethostname): Protect against the SunOS5.5 bug
+       by allocating a larger buffer. Test the gethostname return value for
+       being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
+       returns an error and ENAMETOOLONG isn't defined.
+
+2000-07-05  Paul Eggert  <eggert@twinsun.com>
+       and Bruno Haible  <haible@clisp.cons.org>
+
+       * quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
+
+2000-07-05  Bruno Haible  <haible@clisp.cons.org>
+
+       * quotearg.c (struct quoting_options): Simplify quote_these_too
+       dimension.
+
+2000-07-03  Jim Meyering  <meyering@lucent.com>
+
+       * strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
+       Reported by Bruno Haible.
+
+2000-07-04  Jim Meyering  <meyering@lucent.com>
+
+       * quotearg.c: Make inclusion of <wchar.h> independent of whether
+       HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
+       lacks mbrtowc.
+
+2000-07-03  Paul Eggert  <eggert@twinsun.com>
+       and Bruno Haible  <haible@clisp.cons.org>
+
+       * lib/quotearg.c (mbrtowc):
+       Assign to *pwc, and return 1 only if result is nonzero.
+       (iswprint): Use ISPRINT when substituting our own mbrtowc.
+
+2000-07-03  Jim Meyering  <meyering@lucent.com>
+
+       * readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
+       This is necessary to get a definition of e.g., UTMP_FILE on HP-UX 10.20.
+       From Bob Proulx.
+
+2000-07-02  Jim Meyering  <meyering@lucent.com>
+
+       * quotearg.c (mbstate_t): Don't define here.
+
+2000-07-02  Jim Meyering  <meyering@lucent.com>
+
+       * nanosleep.c (SIGCONT): Define if not already defined.
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
+       per change in ../m4/ls-mntd-fs.m4.
+       (read_filesystem_list): Ignore symbolic links.
+
+2000-06-29  Jim Meyering  <meyering@lucent.com>
+
+       * same.c: Include <string.h> or <strings.h>, as appropriate,
+       for declaration of strcmp.
+
+       * long-options.c: Include <stdlib.h>, for declaration of exit.
+
+       * mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
+       Avoid warning by casting result to `char *' to remove `const'.
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
+
+2000-06-26  Paul Eggert  <eggert@twinsun.com>
+
+       savedir now sets errno on failure and invokes xmalloc to get memory.
+       Fix a couple of other minor bugs while we're at it.
+
+       * savedir.c (<unistd.h>): Do not include; there's no need.
+       (NAMLEN): Remove macro.
+       (malloc, realloc): Remove decls.
+       (stpcpy): Likewise.
+       ("xalloc.h"): Include.
+       (NAME_SIZE_DEFAULT): New macro.
+       (savedir): Use xmalloc / xrealloc to allocate memory.
+       Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
+       Skip "" directory entries.
+       Use strlen to calculate directory entry length, since the old method
+       is rarely used these days and isn't worth supporting.
+       Don't use a pointer after freeing it.
+       Check for integer overflow when calculating allocation size.
+       Use memcpy to copy entries, instead of stpcpy.
+       Set errno properly when returning NULL.
+       Check for readdir error.
+
+2000-06-26  Jim Meyering  <meyering@lucent.com>
+
+       * posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * getusershell.c (xmalloc, xrealloc): Remove functions.
+       Include xalloc.h.
+       Don't include <stdlib.h>.  Don't declare malloc, realloc.
+
+2000-06-23  Bruno Haible  <haible@clisp.cons.org>
+
+       * unicodeio.c (print_unicode_char): Work around ansi2knr deficiency.
+
+2000-06-24  Jim Meyering  <meyering@lucent.com>
+
+       * error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
+
+2000-06-21  Jim Meyering  <meyering@lucent.com>
+
+       * getpass.c: New file, from Bruno Haible.  Required for BeOS.
+
+2000-06-19  Paul Eggert  <eggert@twinsun.com>
+
+       * quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
+       (mbrtowc, mbstate_t): Define substitutes if
+       HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
+       (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
+       not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * xgetcwd.c (xgetcwd): If the required pathname length is smaller
+       than 1024, return a memory chunk of least possible size, instead
+       of size PATH_MAX + 2. In the loop, increment the size proportionally.
+       Use free/xmalloc instead of xrealloc to avoid copying for very long
+       paths.
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * canon-host.c (canon_host): Use malloc and memcpy to copy an
+       address, not strdup.  Include <stdlib.h> and don't declare free().
+
+2000-06-17  Bruno Haible  <haible@clisp.cons.org>
+
+       * path-concat.c (path_concat): Don't access dir[-1] if dir is
+       the empty string.
+
+2000-06-21  Jim Meyering  <meyering@lucent.com>
+
+       * Makefile.am (libfetish_a_SOURCES): Add getstr.c.
+       (noinst_HEADERS): Add getstr.h.
+
+       * getline.c (getstr): Move into a separate file.
+       * getstr.c (getstr): New file, extracted from getline.c, with
+       the following changes: new parameter, delim2; both delim[12]
+       parameters have type `int', not `char'.  The latter would lose
+       with 8-bit delimiters.
+       * getstr.h: New file.
+
+2000-06-19  Jim Meyering  <meyering@lucent.com>
+
+       * getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
+
+2000-06-18  Jim Meyering  <meyering@lucent.com>
+
+       * mkdir.c: Remove file, due mainly to copyright incompatibility.
+       Besides, these days every porting target provides a mkdir function.
+
+       * strnlen.c: Include memory.h, string.h, and/or strings.h as needed.
+       (this snippet comes from src/system.h).
+
+2000-06-15  Paul Eggert  <eggert@twinsun.com>
+
+       * human.c (adjust_value): New function.
+       (human_readable_inexact): Apply rounding style even when
+       printing approximate values.
+
+2000-06-14  Paul Eggert  <eggert@twinsun.com>
+
+       * human.c (human_readable_inexact): Allow an input block
+       size that is not a multiple of the output block size, and vice versa.
+       Reported by Piergiorgio Sartor.
+
+2000-06-14  Paul Eggert  <eggert@twinsun.com>
+
+       * getdate.y (get_date): Apply relative times after time
+       zone indicator, not before.  Reported by Todd A. Jacobs.
+
+2000-06-13  Jim Meyering  <meyering@lucent.com>
+
+       * Makefile.am (all-local): Depend on lstat.c and stat.c.
+
+       * xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
+
+2000-06-12  Paul Eggert  <eggert@twinsun.com>
+
+       * xstat.in: Include <stdlib.h> in lstat, to declare "free".
+
+2000-06-04  Paul Eggert  <eggert@twinsun.com>
+
+       * strnlen.c: Include <config.h> if HAVE_CONFIG_H.
+
+2000-06-04  Jim Meyering  <meyering@lucent.com>
+
+       * getugroups.c (getugroups): Cast -1 to gid_t, for systems like
+       SunOS4.1.4 for which gid_t is an unsigned type.
+
+2000-06-03  Jim Meyering  <meyering@lucent.com>
+
+       * strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
+
+2000-05-26  Bruno Haible  <haible@clisp.cons.org>
+
+       * Makefile.am (install-exec-local): On systems with glibc-2.1 or
+       newer, don't install charset.alias.
+       * config.charset: Change the Linux/glibc rules so they become empty
+       on glibc-2.1 or newer.
+
+2000-06-02  Jim Meyering  <meyering@lucent.com>
+
+       * mountlist.c: Back out last change.  Instead, do this...
+       * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the me_dummy
+       member using the same `ignore'-testing code.
+       * mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
+       fs_type strings.
+       From Mark D. Roth.
+
+2000-05-29  Jim Meyering  <meyering@lucent.com>
+
+       * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore mounts
+       with the `ignore' attribute.  Based on a patch from Mark D. Roth.
+
+2000-05-22  Jim Meyering  <meyering@lucent.com>
+
+       * makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
+
+2000-05-18  Jim Meyering  <meyering@lucent.com>
+
+       * hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
+       back, too, since it may have been modified by allocate_entry.
+       (hash_delete): Rewrite to use neither the assignment operator
+       nor the comma operator in an if-expression.
+
+2000-05-15  Paul Eggert  <eggert@twinsun.com>
+
+       * closeout.c:
+       <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
+       Remove; no longer needed.
+       "quotearg.h": Add include.
+       (file_name): Do not bother to explicitly initialize to NULL; it's less
+       efficient on some hosts.
+       (close_stdout_status): Remove test as to whether stdout was already
+       closed; it breaks for the case "echo x | sort >&-".
+       Quote file name colons.
+       Do not assume that _("write error") lacks format strings.
+
+2000-05-15  Jim Meyering  <meyering@lucent.com>
+
+       * version-etc.c (version_etc_copyright): Update the copyright string
+       used in all --version output.
+
+2000-05-14  Jim Meyering  <meyering@lucent.com>
+
+       * closeout.c (close_stdout_set_file_name): New function.
+       (close_stdout_status): Use new file-scoped global.
+       Return right away if fstat says the stdout file descriptor is invalid.
+       * closeout.h (close_stdout_set_file_name): Declare.
+
+2000-05-10  Jim Meyering  <meyering@lucent.com>
+
+       * closeout.c [default_exit_status]: New file-scoped variable.
+       (close_stdout_set_status): New function.
+       * closeout.h (close_stdout_set_status): Declare.
+
 2000-05-08  Jim Meyering  <meyering@lucent.com>
 
        * long-options.c: Don't include closeout.h.
 
 2000-03-07  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/savedir.c (savedir): Work even if directory size is
+       * savedir.c (savedir): Work even if directory size is
        negative; this can happen with some screwy NFS configurations.
 
 2000-03-06  Jim Meyering  <meyering@lucent.com>
 
 2000-02-28  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/quotearg.c (ALERT_CHAR): New macro.
+       * quotearg.c (ALERT_CHAR): New macro.
        (quotearg_buffer_restyled): Use it.
 
 2000-02-27  Jim Meyering  <meyering@lucent.com>
 
 2000-02-18  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/getdate.y: Handle two-digit years with leading zeros correctly.
+       * getdate.y: Handle two-digit years with leading zeros correctly.
        (textint): New typedef.
        (parser_control): Member year changed from int to textint.
        All uses changed.
 
 2000-02-14  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
+       * getpagesize.h (getpagesize): Port to VMS for Alpha;
        adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
 
 2000-02-12  Jim Meyering  <meyering@lucent.com>
 
 2000-01-16  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
+       * quotearg.c (quotearg_buffer_restyled): Do not quote
        alert, backslash, formfeed, and vertical tab unnecessarily in
        shell quoting style.