Fix dregister not being thread safe.
This commit is contained in:
parent
fdc41cac76
commit
395f7b29b4
|
@ -30,8 +30,10 @@ extern "C" pthread_mutex_t __dirname_lock;
|
||||||
|
|
||||||
extern "C" void dregister(DIR* dir)
|
extern "C" void dregister(DIR* dir)
|
||||||
{
|
{
|
||||||
|
pthread_mutex_lock(&__dirname_lock);
|
||||||
dir->flags |= _DIR_REGISTERED;
|
dir->flags |= _DIR_REGISTERED;
|
||||||
if ( (dir->next = __firstdir) )
|
if ( (dir->next = __firstdir) )
|
||||||
dir->next->prev = dir;
|
dir->next->prev = dir;
|
||||||
__firstdir = dir;
|
__firstdir = dir;
|
||||||
|
pthread_mutex_unlock(&__dirname_lock);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue