Yiannis: I'm doing some
experiments in my local copy with the class browser. I replaced the builder thread with a wxTimer-based state machine (it works on the main thread, 50 iterations every 5 milliseconds), and it works wonderful - the crash is completely gone!
, but I haven't implemented the adding of topmost nodes this way, so building the tree is actually slower right now). I think I'll have it 100% optimized by the end of the week.
Mind opening an experimental branch for me to try out?
Thanks!
Oh, btw... about fixing the bug, here are some things you could try...
1) Change the thread from detached to joinable.
2) Don't set m_pParser, m_pTreeTop and m_pTreeBottom to 0 on finish.
3) Check for nulls on all auxiliary functions
4) Fix The m_pTreeTop and m_pTreeBottom confusion that I exposed on the top of this thread.
Good luck!