mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-29 18:19:30 +00:00
Thanks to snuff-work, who brought up that these fixes might need to be made.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -175,7 +175,7 @@ void ast_hashtab_destroy( struct ast_hashtab *tab, void (*objdestroyfunc)(void *
|
||||
int ast_hashtab_insert_immediate(struct ast_hashtab *tab, const void *obj);
|
||||
|
||||
/* same as the above, but h is the hash index; won't hash to find the index */
|
||||
int ast_hashtab_insert_immediate_bucket(struct ast_hashtab *tab, const void *obj, int h);
|
||||
int ast_hashtab_insert_immediate_bucket(struct ast_hashtab *tab, const void *obj, unsigned int h);
|
||||
|
||||
|
||||
/* check to see if the element is already there; insert only if
|
||||
@@ -194,7 +194,7 @@ void * ast_hashtab_lookup_with_hash(struct ast_hashtab *tab, const void *obj, un
|
||||
|
||||
/* same as the above lookup, but sets h to the key hash value if the lookup fails -- this has the modulus
|
||||
applied, and will not be useful for long term storage if the table is resizable */
|
||||
void * ast_hashtab_lookup_bucket(struct ast_hashtab *tab, const void *obj, int *h);
|
||||
void * ast_hashtab_lookup_bucket(struct ast_hashtab *tab, const void *obj, unsigned int *h);
|
||||
|
||||
/* returns key stats for the table */
|
||||
void ast_hashtab_get_stats( struct ast_hashtab *tab, int *biggest_bucket_size, int *resize_count, int *num_objects, int *num_buckets);
|
||||
|
@@ -246,7 +246,7 @@ struct ast_hashtab * ast_hashtab_create(int initial_buckets,
|
||||
struct ast_hashtab *ast_hashtab_dup(struct ast_hashtab *tab, void *(*obj_dup_func)(const void *obj))
|
||||
{
|
||||
struct ast_hashtab *ht = ast_calloc(1,sizeof(struct ast_hashtab));
|
||||
int i;
|
||||
unsigned int i;
|
||||
|
||||
ht->array = ast_calloc(tab->hash_tab_size,sizeof(struct ast_hashtab_bucket*));
|
||||
ht->hash_tab_size = tab->hash_tab_size;
|
||||
@@ -416,7 +416,7 @@ int ast_hashtab_insert_immediate(struct ast_hashtab *tab, const void *obj)
|
||||
return 1;
|
||||
}
|
||||
|
||||
int ast_hashtab_insert_immediate_bucket(struct ast_hashtab *tab, const void *obj, int h)
|
||||
int ast_hashtab_insert_immediate_bucket(struct ast_hashtab *tab, const void *obj, unsigned int h)
|
||||
{
|
||||
/* normally, you'd insert "safely" by checking to see if the element is
|
||||
already there; in this case, you must already have checked. If an element
|
||||
@@ -456,7 +456,7 @@ int ast_hashtab_insert_safe(struct ast_hashtab *tab, const void *obj)
|
||||
it is not there. */
|
||||
/* will force a resize if the resize func returns 1 */
|
||||
/* returns 1 on success, 0 if there's a problem, or it's already there. */
|
||||
int bucket = 0;
|
||||
unsigned int bucket = 0;
|
||||
if (tab->do_locking)
|
||||
ast_rwlock_wrlock(&tab->lock);
|
||||
|
||||
@@ -525,7 +525,7 @@ void * ast_hashtab_lookup_with_hash(struct ast_hashtab *tab, const void *obj, un
|
||||
return 0;
|
||||
}
|
||||
|
||||
void * ast_hashtab_lookup_bucket(struct ast_hashtab *tab, const void *obj, int *bucket)
|
||||
void * ast_hashtab_lookup_bucket(struct ast_hashtab *tab, const void *obj, unsigned int *bucket)
|
||||
{
|
||||
/* lookup this object in the hash table. return a ptr if found, or NULL if not */
|
||||
unsigned int h;
|
||||
|
Reference in New Issue
Block a user