[Bug]CEGUIEvent
Posted: Fri Oct 12, 2012 09:39
version: 0.7.7
file: CEGUIEvent.cpp
in Event::~Event(), code piece
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.
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.