Page 1 of 1

[Bug]CEGUIEvent

Posted: Fri Oct 12, 2012 09:39
by animaseed
version: 0.7.7
file: CEGUIEvent.cpp

in Event::~Event(), code piece

Code: Select all

for (; iter!=end_iter; ++iter)
{
    iter->seceond->d_event = 0;
    iter->second->d_subscriber->cleanup();
}

should be removed, because the SubcriberSlot objects are wrapped in class RefCounted<BoundSlot>, after the code "d_slots.clear();" excuted, RefCounted<BoundSlot> object will be destroyed, then the clean work will be down. And if one BoundSlot object belongs to two RefCounted<BoundSlot> object, the code piece above will make trouble.