Hi!
The method DWORD initialise() in FFGL.cpp creates an instance that then seems to be leaked, as another instance is created afterwards in instantiateGL().
The problem originates in the call in OSXMain.cpp, line 107 for plugin1 (and similarly later for plugin2):
(...)
//load first plugin (does not instantiate!)
plugin1 = FFGLPluginInstance::New();
(...)
The above call ends up instantiating the plugin even when it says it doesn't.
The second instantiation then comes in line 162, where it is also claimed to occur.
This leaves a dangling plugin instance that seems to never be released, the instance created first. This problem is particularly grave in a plugin I'm developing that provides input from a digital video camera, as the second instance above fails to allocate the camera device, since it is held by the first instance created.
One way of solving this can be seen in the attached FFGL.cpp file, which worked well for me, but since I'm new to FFGL might not be an ideal solution.
Best,
Ilias
Thanks Ilias,
I've posted your bug report on to the FreeFrame develop list to see if anyone on the mac side of things can review.