| @@ -1719,11 +1719,17 @@ public: | |||||
| self = nullptr; | self = nullptr; | ||||
| } | } | ||||
| #ifdef DEBUG | |||||
| if (self) | |||||
| Q_ASSERT(self->effect == effect); | |||||
| #endif | |||||
| intptr_t ret = 0; | intptr_t ret = 0; | ||||
| switch (opcode) | switch (opcode) | ||||
| { | { | ||||
| case audioMasterAutomate: | case audioMasterAutomate: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| self->handleAudioMasterAutomate(index, opt); | self->handleAudioMasterAutomate(index, opt); | ||||
| else | else | ||||
| @@ -1739,6 +1745,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterIdle: | case audioMasterIdle: | ||||
| Q_ASSERT(effect); | |||||
| if (effect) | if (effect) | ||||
| effect->dispatcher(effect, effEditIdle, 0, 0, nullptr, 0.0f); | effect->dispatcher(effect, effEditIdle, 0, 0, nullptr, 0.0f); | ||||
| else | else | ||||
| @@ -1753,6 +1760,7 @@ public: | |||||
| case audioMasterWantMidi: | case audioMasterWantMidi: | ||||
| // Deprecated in VST SDK 2.4 | // Deprecated in VST SDK 2.4 | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| self->handleAudioMasterWantMidi(); | self->handleAudioMasterWantMidi(); | ||||
| else | else | ||||
| @@ -1761,6 +1769,7 @@ public: | |||||
| #endif | #endif | ||||
| case audioMasterGetTime: | case audioMasterGetTime: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| { | { | ||||
| ret = (intptr_t)self->handleAudioMasterGetTime(); | ret = (intptr_t)self->handleAudioMasterGetTime(); | ||||
| @@ -1787,6 +1796,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterProcessEvents: | case audioMasterProcessEvents: | ||||
| Q_ASSERT(self && ptr); | |||||
| if (self) | if (self) | ||||
| { | { | ||||
| if (ptr) | if (ptr) | ||||
| @@ -1804,6 +1814,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterTempoAt: | case audioMasterTempoAt: | ||||
| Q_ASSERT(self); | |||||
| // Deprecated in VST SDK 2.4 | // Deprecated in VST SDK 2.4 | ||||
| if (self) | if (self) | ||||
| ret = self->handleAudioMasterTempoAt(); | ret = self->handleAudioMasterTempoAt(); | ||||
| @@ -1829,6 +1840,7 @@ public: | |||||
| #endif | #endif | ||||
| case audioMasterIOChanged: | case audioMasterIOChanged: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| ret = self->handleAudioMasterIOChanged(); | ret = self->handleAudioMasterIOChanged(); | ||||
| else | else | ||||
| @@ -1837,6 +1849,7 @@ public: | |||||
| case audioMasterNeedIdle: | case audioMasterNeedIdle: | ||||
| // Deprecated in VST SDK 2.4 | // Deprecated in VST SDK 2.4 | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| self->handleAudioMasterNeedIdle(); | self->handleAudioMasterNeedIdle(); | ||||
| else | else | ||||
| @@ -1844,6 +1857,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterSizeWindow: | case audioMasterSizeWindow: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| { | { | ||||
| if (index > 0 && value > 0) | if (index > 0 && value > 0) | ||||
| @@ -1856,6 +1870,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterGetSampleRate: | case audioMasterGetSampleRate: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| ret = self->handleAudioMasterGetSampleRate(); | ret = self->handleAudioMasterGetSampleRate(); | ||||
| else | else | ||||
| @@ -1866,6 +1881,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterGetBlockSize: | case audioMasterGetBlockSize: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| ret = self->handleAudioMasterGetBlockSize(); | ret = self->handleAudioMasterGetBlockSize(); | ||||
| else | else | ||||
| @@ -1900,6 +1916,7 @@ public: | |||||
| #endif | #endif | ||||
| case audioMasterGetCurrentProcessLevel: | case audioMasterGetCurrentProcessLevel: | ||||
| Q_ASSERT(self); | |||||
| if (self) | if (self) | ||||
| ret = self->handleAudioMasterGetCurrentProcessLevel(); | ret = self->handleAudioMasterGetCurrentProcessLevel(); | ||||
| else | else | ||||
| @@ -1937,6 +1954,7 @@ public: | |||||
| #endif | #endif | ||||
| case audioMasterGetVendorString: | case audioMasterGetVendorString: | ||||
| Q_ASSERT(ptr); | |||||
| if (ptr) | if (ptr) | ||||
| strcpy((char*)ptr, "Cadence"); | strcpy((char*)ptr, "Cadence"); | ||||
| else | else | ||||
| @@ -1944,6 +1962,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterGetProductString: | case audioMasterGetProductString: | ||||
| Q_ASSERT(ptr); | |||||
| if (ptr) | if (ptr) | ||||
| strcpy((char*)ptr, "Carla"); | strcpy((char*)ptr, "Carla"); | ||||
| else | else | ||||
| @@ -1965,6 +1984,7 @@ public: | |||||
| #endif | #endif | ||||
| case audioMasterCanDo: | case audioMasterCanDo: | ||||
| Q_ASSERT(ptr); | |||||
| if (ptr) | if (ptr) | ||||
| ret = hostCanDo((const char*)ptr); | ret = hostCanDo((const char*)ptr); | ||||
| else | else | ||||
| @@ -1988,6 +2008,7 @@ public: | |||||
| break; | break; | ||||
| case audioMasterUpdateDisplay: | case audioMasterUpdateDisplay: | ||||
| Q_ASSERT(self && effect); | |||||
| if (self) | if (self) | ||||
| self->handleAudioMasterUpdateDisplay(); | self->handleAudioMasterUpdateDisplay(); | ||||
| else | else | ||||