[osg-users] found memory leak in OSG 3.0.1

Gianluca Natale natale at europe.altair.com
Thu Jan 19 09:02:56 PST 2017


Hi all,
In my application I'm using OSG 3.0.1 (I do know it is old, but I do not have the time now to move to a newer version).
I think I have a memory leak, and I don't know if it's my fault or a bug in OSG.
Using the task manager (on Win 8.1 Pro), I see this.

When I call:

GraphicsContext* GraphicsContext::createGraphicsContext(Traits* traits);

memory allocated in my application increases of about 2.5 MB.

Then, when I call:

GraphicsContext::close(bool callCloseImplementation); // I pass true to this function

memory allocated in my application decreases of about 1.5 MB.
So, there is always  about 1 MB that is not deallocated.

I tried to investigate a bit, and noticed that the problem seems to happen inside this function:

bool GraphicsWindowWin32::setWindow( HWND handle ).

Specifically, there are 2 calls in that function where memory is allocated:


1)      bool GraphicsWindowWin32::setPixelFormat(); // increases about 1 MB

2)      HGLRC GraphicsWindowWin32::createContextImplementation(); // increases about 1.5 MB

So, it looks like the memory allocated at point 1 is never released.
Is there anything I have to call, when I want to destroy a graphic context, other than close()?
Or, if you do know that it is a memory leak, has it been fixed in a newer version of OSG?

Thanks,
Gianluca Natale






-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20170119/7eccf4f3/attachment-0002.htm>


More information about the osg-users mailing list