diff options
Diffstat (limited to 'OpenAL32/Include')
-rw-r--r-- | OpenAL32/Include/alAuxEffectSlot.h | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/OpenAL32/Include/alAuxEffectSlot.h b/OpenAL32/Include/alAuxEffectSlot.h index d496df8d..60724654 100644 --- a/OpenAL32/Include/alAuxEffectSlot.h +++ b/OpenAL32/Include/alAuxEffectSlot.h @@ -48,18 +48,16 @@ static const struct ALeffectStateVtable T##_ALeffectState_vtable = { \ struct ALeffectStateFactoryVtable { - ALeffectState *(*const create)(void); + ALeffectState *(*const create)(ALeffectStateFactory *factory); }; struct ALeffectStateFactory { const struct ALeffectStateFactoryVtable *vtbl; }; -#define ALeffectStateFactory_create(p) ((p)->vtbl->create()) - #define DEFINE_ALEFFECTSTATEFACTORY_VTABLE(T) \ -static ALeffectState* T##_ALeffectStateFactory_create(void) \ -{ return T##_create(); } \ +static ALeffectState* T##_ALeffectStateFactory_create(ALeffectStateFactory *factory) \ +{ return T##_create(STATIC_UPCAST(T, ALeffectStateFactory, factory)); } \ \ static const struct ALeffectStateFactoryVtable T##_ALeffectStateFactory_vtable = { \ T##_ALeffectStateFactory_create, \ |