maint.mk: tell sc_prohibit_strcmp to ding "0 == strcmp (...)", too
[gnulib.git] / ChangeLog
index 49c12ad..681d773 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,112 @@
+2012-02-24  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: tell sc_prohibit_strcmp to ding "0 == strcmp (...)", too
+       * top/maint.mk (sc_prohibit_strcmp): Also prohibit uses of strcmp
+       uses with "==" *before* the call, e.g., 0 == strcmp (...)
+       Remove now-unnecessary str''cmp obfuscation.
+       Suggested by Akim Demaille.
+
+2012-02-24  Bruno Haible  <bruno@clisp.org>
+
+       streq: Rename macro.
+       * lib/streq.h (STREQ_OPT): Renamed from STREQ.
+       * NEWS: Mention the change.
+       * lib/mbrtowc.c (mbrtowc): Update.
+       * lib/uniwidth/cjk.h (is_cjk_encoding): Update.
+       * lib/wcwidth.c (wcwidth): Update.
+       Suggested by Akim Demaille and Jim Meyering.
+
+2012-02-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: fix typo in definition of MIN
+       * lib/regex_internal.h (MIN): Fix typo.  Problem reported by Thomas
+       Schwinge in <http://sourceware.org/bugzilla/show_bug.cgi?id=11638#c4>.
+
+2012-02-19  Paul Eggert  <eggert@cs.ucla.edu>
+           Bruno Haible  <bruno@clisp.org>
+
+       acl: Don't use ACL_CNT and similar ops, since they are unreliable.
+       * lib/file-has-acl.c (file_has_acl) [HP-UX, NonStop Kernel]: Read the
+       entries into a stack-allocated buffer directly.
+       * lib/copy-acl.c (qcopy_acl) [HP-UX, NonStop Kernel]: Likewise.
+
+2012-02-19  Paul Eggert  <eggert@cs.ucla.edu>
+           Bruno Haible  <bruno@clisp.org>
+
+       acl: Don't use GETACLCNT and similar ops, since they are unreliable.
+
+        - There were several instances of this pattern:
+
+            for (;;) {
+              n = acl (f, GETACLCNT, 0, NULL);
+              [ allocate an array A of size N ]
+              if (acl (f, GETACL, n, a) == n)
+                break;
+            }
+
+          This loop might never terminate if some other process is constantly
+          manipulating the file's ACL.  The loop should be rewritten to
+          terminate.
+
+        - The acl (... GETACLNT ...) call is merely an optimization; its value
+          is merely a hint as to how big to make the array.  A better
+          optimization is to avoid the acl (... GETACLNT ...)  call entirely,
+          and just guess a reasonably-big size, growing the size and trying
+          again if it's not large enough.  This guarantees termination, and
+          saves a system call.
+
+       * lib/acl-internal.h: Include <limits.h>.
+       (MIN, SIZE_MAX): New macros.
+       * lib/file-has-acl.c (file_has_acl) [Solaris]: Read the entries into
+       a stack-allocated buffer, and use malloc if it does not fit. Don't
+       use GETACLCNT.
+       * lib/set-mode-acl.c (qset_acl) [Solaris]: Likewise.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Fix endless loop on Solaris with vxfs.
+       * lib/file-has-acl.c (file_has_acl) [Solaris]: Treat a failing
+       acl()/facl() call for ACE_GETACL like a failing call for ACE_GETACLCNT.
+       * lib/set-mode-acl.c (qset_acl) [Solaris]: Likewise.
+       * lib/copy-acl.c (qcopy_acl)[Solaris]: Likewise.
+       * tests/test-sameacls.c (main)[Solaris]: Likewise.
+       Reported by Bill Jones in
+       <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10639>, via Paul Eggert.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Fix copy-acl test failure on Solaris 11 2011-11.
+       * lib/file-has-acl.c (NEW_ACE_WRITEA_DATA): New macro.
+       (acl_ace_nontrivial): Relax the restrictions on access_masks[] so
+       that this function returns 0 in some more cases.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       acl: Update doc references.
+       * doc/acl-resources.txt: Update links to Solaris documentation.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       Fix test failure in many locales on Solaris 11.
+       * tests/test-pipe-filter-gi1.c (main): Don't use range expression in
+       'tr' arguments.
+       * tests/test-pipe-filter-ii1.c (main): Likewise.
+       * build-aux/bootstrap (check_versions): Run 'tr' command with range
+       expressions in the C locale.
+       * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): Likewise.
+       * m4/host-os.m4 (gl_HOST_OS): Likewise.
+
+2012-02-19  Bruno Haible  <bruno@clisp.org>
+
+       gnulib-tool: Improve usage message.
+       * gnulib-tool (func_usage): Move doc of --help and --version to the
+       section "Operation modes".
+
+2012-02-18  Reuben Thomas  <rrt@sc3d.org>
+
+       README-release: make it easier to execute commands
+       * top/README-release: break commands out on to separate lines.
+
 2012-02-16  Stefano Lattarini  <stefano.lattarini@gmail.com>
 
        GNUmakefile: simplify detection of unconfigured trees
@@ -7,7 +116,7 @@
 
 2012-02-13  Simon Josefsson  <simon@josefsson.org>
 
-       * gnulib-tool (Usage): Document --help and --version.
+       * gnulib-tool (func_usage): Document --help and --version.
 
 2012-02-11  Jim Meyering  <meyering@redhat.com>