assert(handle->audioIoHandle);
AUDIO_IO_LOGD("[%p]", handle);
- handle->audioIoHandle->drain();
+ auto output_handle = dynamic_cast<CAudioOutput*>(handle->audioIoHandle);
+ if (output_handle == nullptr)
+ return __convert_audio_io_error(CAudioError::EError::ERROR_INVALID_HANDLE);
+
+ output_handle->drain();
} catch (const CAudioError& e) {
AUDIO_IO_LOGE("%s", e.getErrorMsg());
return __convert_audio_io_error(e.getError());