Enrico Forestieri wrote: > On Wed, Dec 20, 2006 at 07:57:30PM +0100, Peter Kümmel wrote: >> Bo Peng wrote: >>> It appears to me that ~LyxView() is called before ~Buffer() so when >>> the closing() signal is emitted (line 229, buffer.C), and triggers a >>> LyXView::setBuffer, there is no instance of LyXView. This is the also >>> the case for msvc, but lyx/win does not report any error. >>> >>> Peter, does this have anything to do with your lyx/quit cleanup? >>> >>> Bo >>> >> Enrico was the last one who touched the quit logic. > > Yes, but I only made sure that the quit procedure was not entered at > all if cancel was selected. >
lyx_main.C: /// The main application class private implementation. struct LyX::Singletons { Singletons(): iconv(ucs4_codeset, "UTF-8") { } /// our function handler LyXFunc lyxfunc_; /// BufferList buffer_list_; /// boost::scoped_ptr<kb_keymap> toplevel_keymap_; buffer_list_ is not in a smart pointer, don't know why. And there is no explicit destruction of the Singleton object, so the compiler will do it. Maybe attached patch helps. -- Peter Kümmel