From: Paul Eggert Date: Mon, 9 Jan 2017 06:10:58 +0000 (-0800) Subject: getprogname: fix port to IRIX X-Git-Tag: v1.0~6398 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=9ec5a9d7708c62ef73ea19ca0266c84191ff8839;p=gnulib.git getprogname: fix port to IRIX * lib/getprogname.c (getprogname) [__sgi]: Don't dump core if malloc returns NULL. --- diff --git a/ChangeLog b/ChangeLog index 79475df1cf..0d6042226f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2017-01-08 Paul Eggert + getprogname: fix port to IRIX + * lib/getprogname.c (getprogname) [__sgi]: + Don't dump core if malloc returns NULL. + dfa: fix reallocation bug when matching newlines Problem reported for sed by S. Gilles (Bug#25390). * lib/dfa.c (realloc_trans_if_necessary): Move earlier. diff --git a/lib/getprogname.c b/lib/getprogname.c index 729f01ed54..abc03ec2b2 100644 --- a/lib/getprogname.c +++ b/lib/getprogname.c @@ -169,8 +169,11 @@ getprogname (void) char *namenul = memchr (name, '\0', namesize); size_t namelen = namenul ? namenul - name : namesize; char *namecopy = malloc (namelen + 1); - namecopy[namelen] = 0; - return memcpy (namecopy, name, namelen); + if (namecopy) + { + namecopy[namelen] = 0; + return memcpy (namecopy, name, namelen); + } } } return NULL;