Finally, I found the problem. It was in this lines of code inside the draw() 
method of the OpDesk class:

if ( selAreaX2 != -1 )
                draw_focus(FL_FLAT_BOX, selAreaX1, selAreaY1, selAreaX2 - 
selAreaX1, selAreaY2-selAreaY1);

The selAreaX2 wasn´t being initialized correctly, and the other variables were 
being initialized only when certain conditiones where met, and I overlooked 
initializing the mentioned variable. Since draw() is often called, and 
selAreaX2 was certainly being always not -1, the app was trying to draw a focus 
box of who-knows what size. And since these where not pointers, I wasn´t 
getting the usual app crash, just an app freeze.

Funny how other unrelated actions (like moving some lines of code around)seemed 
to fix the problem - that made it harder to find the bug. Which resulted to be 
mine.

Thank you guys!

_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk

Reply via email to