*prev = hassoc->next;
val = (void*)hassoc->val;
- if((errno = allocator_dealloc(htable->allocator,hassoc)))
+ if(allocator_dealloc(htable->allocator,hassoc))
return NULL;
return val;
hassoc_t* prev;
fn_cmp_key_t fn_cmp_key;
void* val;
+ int rv;
if(!htable || !key)
return EINVAL;
*prev = hassoc->next;
val = (void*)hassoc->val;
- if((errno = allocator_dealloc(htable->allocator,hassoc)))
- return errno;
+ if((rv = allocator_dealloc(htable->allocator,hassoc)))
+ return rv;
if(htable->fn_finalize)
{
- if((errno = (*(htable->fn_finalize))(&val)))
- return errno;
+ if((rv = (*(htable->fn_finalize))(&val)))
+ return rv;
}
return 0;
htable_free(htable_t* htableptr)
{
htable_t htable;
+ int rv;
if(!(*htableptr))
return EINVAL;
for(hassoc = content[pos]; hassoc; hassoc = hassoc->next)
{
val = (void*)hassoc->val;
- if((errno = (*(htable->fn_finalize))(&val)))
- return errno;
+ if((rv = (*(htable->fn_finalize))(&val)))
+ return rv;
}
}
}
free(htable->content);
- if((errno = allocator_free(&(htable->allocator))))
- return errno;
+ if((rv = allocator_free(&(htable->allocator))))
+ return rv;
free(*htableptr);
*htableptr = NULL;
register int pos;
int size;
void* val;
+ int rv;
if(!htable)
return EINVAL;
for(hassoc = content[pos]; hassoc; hassoc = hassoc->next)
{
val = (void*)hassoc->val;
- if((errno = (*(htable->fn_finalize))(&val)))
- return errno;
+ if((rv = (*(htable->fn_finalize))(&val)))
+ return rv;
}
content[pos] = NULL;