kernel/sem: Restore interrupts-unlock before free().
This commit is contained in:
@@ -355,7 +355,7 @@ delete_sem_internal(sem_id id, bool checkPermission)
|
||||
|
||||
int32 slot = id % sMaxSems;
|
||||
|
||||
InterruptsLocker _;
|
||||
InterruptsLocker interruptsLocker;
|
||||
SpinLocker listLocker(sSemsSpinlock);
|
||||
SpinLocker semLocker(sSems[slot].lock);
|
||||
|
||||
@@ -386,6 +386,8 @@ delete_sem_internal(sem_id id, bool checkPermission)
|
||||
scheduler_reschedule_if_necessary_locked();
|
||||
schedulerLocker.Unlock();
|
||||
|
||||
interruptsLocker.Unlock();
|
||||
|
||||
free(name);
|
||||
return B_OK;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user