On Fri, Mar 25, 2011 at 9:23 PM, Sergey Kurdakov <[email protected]> wrote:
> Hi devs.
>
>
> Blenderplayer reports memory corruption while exiting here:
>
> GHOST_EventManager::~GHOST_EventManager()
> {
>        disposeEvents();
>
>        TConsumerVector::iterator iter= m_consumers.begin();
>        while (iter != m_consumers.end())
>        {
>                GHOST_IEventConsumer* consumer = *iter;
>                delete consumer;
>                m_consumers.erase(iter);
>                iter = m_consumers.begin();
>        }
> }
>
> on delete consumer;
> line
>
> I think, that running Valgrind on linux could reveal the source of the 
> problem,
> I'm on windows and not equipped with memory profilers.
>
> I did not try to track the reason.
> But seems with Valgrind this should be easy.
>
> So if someone has a minute to look at this minor issue, that will be great.
>
> Regards
> Sergey

Fixed r35792. was a double free, C++ was freeing automatic but leaving
the event consumer in the event manager which was being freed with the
system.

Note that these bugs don't need valgrind to track down, adding prints
& breakpoints in the free functions is enough to work out whats going
on.
_______________________________________________
Bf-committers mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-committers

Reply via email to