diff options
Diffstat (limited to 'src/plugins/Output/wasapi')
| -rw-r--r-- | src/plugins/Output/wasapi/outputwasapi.cpp | 5 | ||||
| -rw-r--r-- | src/plugins/Output/wasapi/outputwasapi.h | 18 | ||||
| -rw-r--r-- | src/plugins/Output/wasapi/settingsdialog.cpp | 11 |
3 files changed, 16 insertions, 18 deletions
diff --git a/src/plugins/Output/wasapi/outputwasapi.cpp b/src/plugins/Output/wasapi/outputwasapi.cpp index 1a803bf68..2db27cfc4 100644 --- a/src/plugins/Output/wasapi/outputwasapi.cpp +++ b/src/plugins/Output/wasapi/outputwasapi.cpp @@ -56,11 +56,6 @@ OutputWASAPI::DWASAPIChannels OutputWASAPI::m_wasapi_pos[10] = { OutputWASAPI::OutputWASAPI() : Output()
{
- m_pEnumerator = nullptr;
- m_pDevice = nullptr;
- m_pAudioClient = nullptr;
- m_pRenderClient = nullptr;
- m_pSimpleAudioVolume = nullptr;
instance = this;
QSettings settings(Qmmp::configFile(), QSettings::IniFormat);
m_id = settings.value("WASAPI/device", "default").toString();
diff --git a/src/plugins/Output/wasapi/outputwasapi.h b/src/plugins/Output/wasapi/outputwasapi.h index 10fd10cee..0c03a7e10 100644 --- a/src/plugins/Output/wasapi/outputwasapi.h +++ b/src/plugins/Output/wasapi/outputwasapi.h @@ -1,5 +1,5 @@ /***************************************************************************
- * Copyright (C) 2016 by Ilya Kotov *
+ * Copyright (C) 2016-2020 by Ilya Kotov *
* forkotov02@ya.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -60,16 +60,16 @@ private: void status();
void uninitialize();
- IMMDeviceEnumerator *m_pEnumerator;
- IMMDevice *m_pDevice;
- IAudioClient *m_pAudioClient;
- IAudioRenderClient *m_pRenderClient;
- ISimpleAudioVolume *m_pSimpleAudioVolume;
+ IMMDeviceEnumerator *m_pEnumerator = nullptr;
+ IMMDevice *m_pDevice = nullptr;
+ IAudioClient *m_pAudioClient = nullptr;
+ IAudioRenderClient *m_pRenderClient = nullptr;
+ ISimpleAudioVolume *m_pSimpleAudioVolume = nullptr;
- UINT32 m_bufferFrames;
- int m_frameSize;
+ UINT32 m_bufferFrames = 0;
+ int m_frameSize = 0;
QString m_id;
- bool m_exclusive;
+ bool m_exclusive = false;
typedef struct
{
diff --git a/src/plugins/Output/wasapi/settingsdialog.cpp b/src/plugins/Output/wasapi/settingsdialog.cpp index d91d9ca9a..2d91c66e1 100644 --- a/src/plugins/Output/wasapi/settingsdialog.cpp +++ b/src/plugins/Output/wasapi/settingsdialog.cpp @@ -71,11 +71,14 @@ void SettingsDialog::enumDevices() IPropertyStore *pProps = nullptr;
UINT count = 0;
- result = pEnumerator->EnumAudioEndpoints(eRender, DEVICE_STATE_ACTIVE, &pEndpoints);
- if(result != S_OK)
+ if(pEnumerator)
{
- qWarning("SettingsDialog: IMMDeviceEnumerator::EnumAudioEndpoints failed, error code = 0x%lx", result);
- pEndpoints = nullptr;
+ result = pEnumerator->EnumAudioEndpoints(eRender, DEVICE_STATE_ACTIVE, &pEndpoints);
+ if(result != S_OK)
+ {
+ qWarning("SettingsDialog: IMMDeviceEnumerator::EnumAudioEndpoints failed, error code = 0x%lx", result);
+ pEndpoints = nullptr;
+ }
}
if(pEndpoints)
|
