changeset 9200:da3798e554d6

* lib/hash.c (hash_initialize): Detect calloc failure. Reported by Bruno Haible.
author Jim Meyering <jim@meyering.net>
date Sun, 09 Sep 2007 14:48:10 +0000
parents 178478846e9b
children 19daae2ce89d
files ChangeLog lib/hash.c
diffstat 2 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-09  Jim Meyering  <jim@meyering.net>
+
+	* lib/hash.c (hash_initialize): Detect calloc failure.
+	Reported by Bruno Haible.
+
 2007-09-09  Bruno Haible  <bruno@clisp.org>
 
 	* lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
--- a/lib/hash.c
+++ b/lib/hash.c
@@ -1,6 +1,6 @@
 /* hash - hashing table processing.
 
-   Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006 Free
+   Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007 Free
    Software Foundation, Inc.
 
    Written by Jim Meyering, 1992.
@@ -576,6 +576,8 @@
     goto fail;
 
   table->bucket = calloc (table->n_buckets, sizeof *table->bucket);
+  if (table->bucket == NULL)
+    goto fail;
   table->bucket_limit = table->bucket + table->n_buckets;
   table->n_buckets_used = 0;
   table->n_entries = 0;