Abdelrazak Younes wrote:
> Abdelrazak Younes wrote:
>> Peter Kümmel wrote:
>>> Maybe someone has an idea:
>>>
>>> 74     LyXView::LyXView(int id)
>>> 75             : work_area_(0),
>>> 76               toolbars_(new Toolbars(*this)),
>>> 77               autosave_timeout_(new Timeout(5000)),
>>> 78               dialogs_(new Dialogs(*this)),
>>> 79               controlcommand_(new ControlCommandBuffer(*this)),
>>> id_(id)
>>> 80     {
>>>
>>>
>>> when crashing it goes from line 79 to the ctor of Dialogs and I
>>> assume that the crash happens there.
>>> The last patch there is
>>> http://www.lyx.org/trac/changeset/18684
>>>
>>> rc1 was released at May 31, the patch is from May 6. The patch adds a
>>> connect
>>> and you have  a crash in the boost/signals. Bingo.
>>
>> Hum, maybe the problem is in our side and not boost. This comment and
>> code in frontends/Dialogs.cpp seems suspicious to me:
>>
>> // Note that static boost signals break some compilers, so this wrapper
>> // initialises the signal dynamically when it is first invoked.
>> template<typename Signal>
>> class BugfixSignal {
> 
> I think the responsible is this static "hideSignal" which is common to
> all Dialogs instance and thus all LyXView instance:
> 
> BugfixSignal<boost::signal<void(string const &, Inset*)> > hideSignal;
> 
> Abdel.
> 


Yes, I also think so, we should switch to a new/delete solution.

Peter

Reply via email to