|
From: <sv...@va...> - 2014-09-13 22:31:21
|
Author: florian
Date: Sat Sep 13 22:31:13 2014
New Revision: 14532
Log:
Document the NULL-ness of the return values of HT_construct and HT_to_array.
Audit call sites.
Modified:
trunk/drd/drd_malloc_wrappers.c
trunk/include/pub_tool_hashtable.h
Modified: trunk/drd/drd_malloc_wrappers.c
==============================================================================
--- trunk/drd/drd_malloc_wrappers.c (original)
+++ trunk/drd/drd_malloc_wrappers.c Sat Sep 13 22:31:13 2014
@@ -293,7 +293,6 @@
{
tl_assert(s_malloc_list == 0);
s_malloc_list = VG_(HT_construct)("drd_malloc_list");
- tl_assert(s_malloc_list);
tl_assert(start_callback);
tl_assert(stop_callback);
Modified: trunk/include/pub_tool_hashtable.h
==============================================================================
--- trunk/include/pub_tool_hashtable.h (original)
+++ trunk/include/pub_tool_hashtable.h Sat Sep 13 22:31:13 2014
@@ -54,7 +54,7 @@
/* Make a new table. Allocates the memory with VG_(calloc)(), so can
be freed with VG_(free)(). The table starts small but will
periodically be expanded. This is transparent to the users of this
- module. */
+ module. The function never returns NULL. */
extern VgHashTable VG_(HT_construct) ( const HChar* name );
/* Count the number of nodes in a table. */
@@ -95,7 +95,8 @@
/* Allocates a suitably-sized array, copies pointers to all the hashtable
elements into it, then returns both the array and the size of it. The
- array must be freed with VG_(free). */
+ array must be freed with VG_(free). If the hashtable is empty, the
+ function returns NULL and assigns *nelems = 0. */
extern VgHashNode** VG_(HT_to_array) ( VgHashTable t, /*OUT*/ UInt* n_elems );
/* Reset the table's iterator to point to the first element. */
|