diff --git a/modules/juce_audio_devices/native/juce_win32_Midi.cpp b/modules/juce_audio_devices/native/juce_win32_Midi.cpp index 925cdb3bf9..cbb7fd4162 100644 --- a/modules/juce_audio_devices/native/juce_win32_Midi.cpp +++ b/modules/juce_audio_devices/native/juce_win32_Midi.cpp @@ -619,15 +619,17 @@ private: void run() override { + auto parentPtr = &parent; + parent.watcher->add_Added ( Callback> ( - [this](IDeviceWatcher*, IDeviceInformation* info) { return parent.addDevice (info); } + [parentPtr](IDeviceWatcher*, IDeviceInformation* info) { return parentPtr->addDevice (info); } ).Get(), &parent.deviceAddedToken); parent.watcher->add_Removed ( Callback> ( - [this](IDeviceWatcher*, IDeviceInformationUpdate* info) { return parent.removeDevice (info); } + [parentPtr](IDeviceWatcher*, IDeviceInformationUpdate* info) { return parentPtr->removeDevice (info); } ).Get(), &parent.deviceRemovedToken);