bugGNU TeXmacs - Bugs: bug #40676, Fatal error during automatic...

 
 

You are not allowed to post comments on this tracker with your current authentification level.

bug #40676: Fatal error during automatic generation of website

Submitted by:  Joris van der Hoeven <vdhoeven>
Submitted on:  Fri 22 Nov 2013 05:23:31 PM UTC  
 
Category: Qt portPriority: 9 - Immediate
Item Group: ErrorStatus: Ready For Test
Privacy: PublicAssigned to: Miguel de Benito <mdbenito>
Originator Name: Open/Closed: Open
Release: Release: None
Fixed Release: NoneFixed Release: 
Keywords: 

Fri 06 Dec 2013 06:14:54 PM UTC, comment #5:

The idea to set the rep field to NULL may temporarily hide the bug, but I doubt that it constitutes a genuine fix. We really need to understand what is going on. The change in the DEC_ macro also is not harmless to the execution speed and size of the produced binary.

Joris van der Hoeven <vdhoeven>
Project Administrator
Fri 06 Dec 2013 03:58:06 PM UTC, comment #4:

Ok, that previous comment ends up with some garbled stuff from previous versions (this tracker sucks...)

I meant to say that a quick and harmless (?) fix is to set the rep field to NULL in the DEC_* macros in basic.cpp. This is done in commit 8043 and fixes the previous problem. Now I really am unable to crash TeXmacs opening and closing buffers and windows.

However, I'd still like to know what was going on...

Miguel de Benito <mdbenito>
Project MemberIn charge of this item.
Fri 06 Dec 2013 03:52:19 PM UTC, comment #3:

Sadly, there are still ways to crash texmacs which are related to this bug:

  • Open TeXmacs.
  • Open new window.
  • Create new buffer in window 2.
  • Close the new buffer.
  • Click the close button of window 2.
  • Dead.

The crash happens during deletion of QTMWidget, triggered by the deletion of the qt_window_widget inside kill_window(): QTMWidget's smartpointer to its owning qt_simple_widget_rep goes out of scope and tries to delete (again) this object. Either

  • we are directly deleting some editor_rep* somewhere before,
  • or we have a copy of the simple_widget_rep* (is this possible?)
  • or ?

A "solution" is to set the rep field to NULL after tm_delete() in the macros DEC_COUNT_NULL. I think this can do no harm, so

during execution of qt delayed commands in qt_gui. Some have a qt_simple_widget_rep* as payload in their blackboxes which has already been deleted by the time the command

Miguel de Benito <mdbenito>
Project MemberIn charge of this item.
Wed 04 Dec 2013 07:22:16 PM UTC, comment #2:

I seem to have been wrong about sync errors. I have seen none after commit 7972. I've also recently uncommented the tm_delete<view> in Texmacs/Data/new_view.cpp and things work fine.

Miguel de Benito <mdbenito>
Project MemberIn charge of this item.
Mon 02 Dec 2013 09:58:21 AM UTC, comment #1:

There's a fix for the crash in commit 7972: QWidgets were being deleted once manually and again via the layout (note: QLayout::removeWidget() does NOT alter ownership, one has to takeAt(), delete the widget and the QLayoutItem for that.)

However, "synchronization errors" still happen (quite) sporadically and are caught by the Pokemon catcher. I have seen no instability afterwards.

Miguel de Benito <mdbenito>
Project MemberIn charge of this item.
Fri 22 Nov 2013 05:23:31 PM UTC, original submission:

Create a directory with two non trivial TeXmacs documents. Next convert the directory to Html using Tools -> Web -> Create web site. In the Qt version, this causes TeXmacs to crash. It seems that the crash is due to a change in revision 5549. I investigated a bit, but even the new exception handling mechanism is not able to catch this bug. So it seems that something is seriously out of sync at the Qt side.

Joris van der Hoeven <vdhoeven>
Project Administrator

 

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by mdbenito (Posted a comment)
  • -unavailable- added by vdhoeven (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon 02 Dec 2013 09:58:21 AM UTCmdbenitoStatusConfirmed=>Ready For Test
    Fri 22 Nov 2013 05:23:41 PM UTCvdhoevenPriority5 - Normal=>9 - Immediate

    Back to the top


    Powered by Savane 3.1-cleanup