avoid potential race condition on configuration reload

This commit is contained in:
z3APA3A 2015-09-16 00:54:34 +03:00
parent 98961ced0d
commit 206e00c933

View File

@ -961,8 +961,11 @@ void hashadd(struct hashtable *ht, const unsigned char* name, unsigned long valu
struct hashentry * he; struct hashentry * he;
unsigned index; unsigned index;
if(!value||!name||!ht->hashtable||!ht->hashempty) return;
pthread_mutex_lock(&hash_mutex); pthread_mutex_lock(&hash_mutex);
if(!value||!name||!ht->hashtable||!ht->hashempty){
pthread_mutex_unlock(&hash_mutex);
return;
}
he = ht->hashempty; he = ht->hashempty;
ht->hashempty = ht->hashempty->next; ht->hashempty = ht->hashempty->next;
nametohash(name, he->hash); nametohash(name, he->hash);