Don't resume the backend if there's no contexts

This commit is contained in:
Chris Robinson
2014-05-24 17:19:52 -07:00
parent 4ca561acd3
commit 3d6ffa282d
+11 -10
View File
@@ -3675,17 +3675,18 @@ ALC_API void ALC_APIENTRY alcDeviceResumeSOFT(ALCdevice *device)
LockLists();
if((device->Flags&DEVICE_PAUSED))
{
if(V0(device->Backend,start)() != ALC_FALSE)
device->Flags &= ~DEVICE_PAUSED;
if(device->ContextList != NULL)
{
device->Flags |= DEVICE_RUNNING;
device->Flags &= ~DEVICE_PAUSED;
}
else
{
alcSetError(device, ALC_INVALID_DEVICE);
ALCdevice_Lock(device);
aluHandleDisconnect(device);
ALCdevice_Unlock(device);
if(V0(device->Backend,start)() != ALC_FALSE)
device->Flags |= DEVICE_RUNNING;
else
{
alcSetError(device, ALC_INVALID_DEVICE);
ALCdevice_Lock(device);
aluHandleDisconnect(device);
ALCdevice_Unlock(device);
}
}
}
UnlockLists();