The non empty patch.

Peter Kümmel wrote:
> 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
Index: src/lyx_main.C
===================================================================
--- src/lyx_main.C      (revision 16341)
+++ src/lyx_main.C      (working copy)
@@ -181,6 +181,7 @@
 
 LyX::~LyX()
 {
+       pimpl_.reset();
 }
 
 

Reply via email to