Mercurial > hg > octave-lojdl > gnulib-hg
comparison lib/regex_internal.c @ 17235:e101c2620c25
regex: port to hosts where malloc (0) == NULL
Reported by Aharon Robbins in
<http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
* lib/regex_internal.c (re_node_set_alloc):
Don't assume that malloc (0) yields nonnull.
* lib/regex_internal.h (MALLOC_0_IS_NONNULL): New macro.
* m4/regex.m4 (gl_PREREQ_REGEX): Require gl_EEMALLOC.
* modules/regex (Files): Add m4/eealloc.m4.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Sat, 29 Dec 2012 22:56:31 -0800 |
parents | b6b08f30c630 |
children | 551d91bcca65 |
comparison
equal
deleted
inserted
replaced
17234:de636633c6cd | 17235:e101c2620c25 |
---|---|
972 re_node_set_alloc (re_node_set *set, Idx size) | 972 re_node_set_alloc (re_node_set *set, Idx size) |
973 { | 973 { |
974 set->alloc = size; | 974 set->alloc = size; |
975 set->nelem = 0; | 975 set->nelem = 0; |
976 set->elems = re_malloc (Idx, size); | 976 set->elems = re_malloc (Idx, size); |
977 if (BE (set->elems == NULL, 0)) | 977 if (BE (set->elems == NULL, 0) && (MALLOC_0_IS_NONNULL || size != 0)) |
978 return REG_ESPACE; | 978 return REG_ESPACE; |
979 return REG_NOERROR; | 979 return REG_NOERROR; |
980 } | 980 } |
981 | 981 |
982 static reg_errcode_t | 982 static reg_errcode_t |