Heeks / heekscad-old

/!\ Obsolete repository of HeeksCAD
http://heeks.net
Other
111 stars 47 forks source link

Strange icons/menu behaviour then segfault #19

Open neomilium opened 12 years ago

neomilium commented 12 years ago

I'm using HeeksCAD for his HeeksCNC module. I noticed a strange behaviour with display : when I move on top of icons which drops a menu, sometimes the menu stay opened while I can point another object including another icon menu which drop a second menu. Next, if I gain focus on firstly opened icons-menu and click on one of them, HeeksCAD segfault.

I don't know if its related but when I'm opening HeeksCAD from terminal then closing it (without loading anything), terminal reports me a segfault too.

arthurwolf commented 12 years ago

I get this too, it makes heekscad virtually unusable ( if clicking a button segfaults, you can't use it ). Any fix possible ?

I use Ubuntu 11.10 64bits, installed Heekscad from github as recommended.

arthurwolf commented 12 years ago

What is going wrong is probably there : 

void OnIdle(wxIdleEvent& event) {
    if(m_toolbarPopup)
    {
        const wxPoint & pt = ::wxGetMousePosition();
        if(!m_toolbarPopup->GetScreenRect().Contains(pt))
        {
            delete m_toolbarPopup;
            m_toolbarPopup = NULL;
        }
    }
}

line 1429 in HeeksFrame.cpp It looks like it does not always close the popup when it is supposed to, and so when you click the button you fuck memory up or something. No idea how to fix it.

arthurwolf commented 12 years ago

Found a partial solution.

around line 1400 : 

void OnMenuEvent(wxCommandEvent& event)
{
    int i = 0;
    for(std::list<CFlyOutItem>::const_iterator It = m_flyout_list.m_list.begin(); It != m_flyout_list.m_list.end(); It++, i++)
    {
        if( i+ID_FIRST_POP_UP_MENU_TOOL == event.GetId())
        {
            // hide the popup
            if(m_toolbarPopup){   m_toolbarPopup->Hide(); m_toolbarPopup->Close(); }

This makes it so that heeksad no longer crashes when the button is clicked. But the toolbar still stays stuck. But it's not as bad.

flosse commented 12 years ago

... similar problems on ubuntu 12.04. amd64 :(

dubstar-04 commented 12 years ago

I am having the same problem on 12.04 also.

Has anyone found a fix for this?