An assertion seems to be inverted by mistake, as MT_assert(!m_mouse); is followed by using m_mouse->XXXX.