diff --git a/src/audio/SDL_audio.c b/src/audio/SDL_audio.c index 6cb683433f..6b8099c4e7 100644 --- a/src/audio/SDL_audio.c +++ b/src/audio/SDL_audio.c @@ -246,6 +246,11 @@ static SDL_AudioDevice *CreatePhysicalAudioDevice(const char *name, SDL_bool isc device->instance_id = assign_audio_device_instance_id(iscapture, /*islogical=*/SDL_FALSE); SDL_LockRWLockForWriting(current_audio.device_list_lock); + + if (*devices) { + SDL_assert((*devices)->prev == NULL); + (*devices)->prev = device; + } device->next = *devices; *devices = device; SDL_AtomicIncRef(device_count);