Nikolay Sivov (@nsivov) commented about dlls/mfmediaengine/main.c:
- if (engine->flags & FLAGS_ENGINE_SHUT_DOWN)
hr = MF_E_SHUTDOWN;
- else if (!mf_array_reserve((void **)&engine->effects.video_effects, &engine->effects.video_effects_capacity,
engine->effects.video_effects_count + 1, sizeof(*engine->effects.video_effects)))
- {
hr = E_OUTOFMEMORY;
- }
- else
- {
engine->effects.video_effects[engine->effects.video_effects_count].object = effect;
IUnknown_AddRef(engine->effects.video_effects[engine->effects.video_effects_count].object);
engine->effects.video_effects[engine->effects.video_effects_count].optional = is_optional;
engine->effects.video_effects_count++;
- }
A small helper will be useful here, could be reused for audio later.