bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Errors with rpl_realloc(), pthreads calls on hppa2.0w-hp-hpux11.11


From: Paul Eggert
Subject: Re: Errors with rpl_realloc(), pthreads calls on hppa2.0w-hp-hpux11.11
Date: Sun, 13 Oct 2013 23:10:13 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.0

Daniel Richard G. wrote:
> The configure script is created in the course of running
> 
>     ./gnulib-tool \
>         --create-testdir \
>         --dir=/tmp/testdir \
>         --with-tests \
>         --single-configure \
>         `./posix-modules`

Thanks, that helped me reproduce the problem.
I installed this fix:

---
 ChangeLog          | 12 ++++++++++++
 lib/mgetgroups.c   |  2 +-
 modules/mgetgroups |  2 +-
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e3e514c..ad2b141 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2013-10-13  Paul Eggert  <address@hidden>
+
+       mgetgroups: remove dependency on realloc-gnu
+       The dependency violates the comment in realloc-gnu, which
+       says that tests can't depend on realloc-gnu; some tests depend
+       on mgetgroups, so mgetgroups can't depend on realloc-gnu.
+       Problem reported by Daniel Richard G. in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00056.html>.
+       * lib/mgetgroups.c (mgetgroups): Don't call realloc (NULL, 0).
+       * modules/mgetgroups (Depends-on): Depend on realloc-posix,
+       not realloc-gnu.
+
 2013-10-12  Paul Eggert  <address@hidden>
 
        regex-tests: port to HP-UX 11.11
diff --git a/lib/mgetgroups.c b/lib/mgetgroups.c
index 2d82f45..846662b 100644
--- a/lib/mgetgroups.c
+++ b/lib/mgetgroups.c
@@ -133,7 +133,7 @@ mgetgroups (char const *username, gid_t gid, gid_t **groups)
       return -1;
     }
 
-  if (!username && gid != (gid_t) -1)
+  if (max_n_groups == 0 || (!username && gid != (gid_t) -1))
     max_n_groups++;
   g = realloc_groupbuf (NULL, max_n_groups);
   if (g == NULL)
diff --git a/modules/mgetgroups b/modules/mgetgroups
index 76eee01..f401cdf 100644
--- a/modules/mgetgroups
+++ b/modules/mgetgroups
@@ -9,7 +9,7 @@ m4/mgetgroups.m4
 Depends-on:
 getgroups
 getugroups
-realloc-gnu
+realloc-posix
 xalloc-oversized
 
 configure.ac:
-- 
1.8.3.1





reply via email to

[Prev in Thread] Current Thread [Next in Thread]