X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fuserspec.c;h=33a9cfd1a2c43103c1627e419e0bb19dd2280e9a;hb=5e2e45b222a2b605ad7319896497e972394268e1;hp=ba66fac8b34d359dff2c6c17a8cdbbf5e81bda6b;hpb=b216ef7a2e9cb0bbfba8d2539e6995d3f64146ee;p=gnulib.git diff --git a/lib/userspec.c b/lib/userspec.c index ba66fac8b..33a9cfd1a 100644 --- a/lib/userspec.c +++ b/lib/userspec.c @@ -1,5 +1,5 @@ /* userspec.c -- Parse a user and group string. - Copyright (C) 1989-1992, 1997-1998, 2000, 2002-2004 Free Software + Copyright (C) 1989-1992, 1997-1998, 2000, 2002-2005 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -43,6 +43,7 @@ # include #endif +#include "intprops.h" #include "inttostr.h" #include "strdup.h" #include "xalloc.h" @@ -66,14 +67,6 @@ struct group *getgrgid (); # define endpwent() ((void) 0) #endif -/* The extra casts work around common compiler bugs. */ -#define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) -/* The outer cast is needed to work around a bug in Cray C 5.0.3.0. - It is necessary at least when t == time_t. */ -#define TYPE_MINIMUM(t) ((t) (TYPE_SIGNED (t) \ - ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0)) -#define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t))) - #ifndef UID_T_MAX # define UID_T_MAX TYPE_MAXIMUM (uid_t) #endif @@ -154,7 +147,7 @@ parse_with_separator (char const *spec, char const *separator, size_t ulen = separator - spec; if (ulen != 0) { - u = xclone (spec, ulen + 1); + u = xmemdup (spec, ulen + 1); u[ulen] = '\0'; } }