Quit crashes app

Bug #314935 reported by James Vasile
4
Affects Status Importance Assigned to Milestone
BookLiberator
Invalid
Low
James Vasile

Bug Description

There are three ways to close bkrpr. There's a button on the window, an option in the file menu and a key combination (C-q). The latter two exit just fine. The first results in the following and crash. It *does* effectively close the app, but obviously this isn't what's intended. I imagine fixing this is a few minutes work, but I haven't looked at all.

vasile@brennan:~/personal/bkrpr$ ./bkrpr.py
Starting GUI. Run bkrpr --help for commandline operation.
New done
Opening /home/vasile/personal/bkrpr/Tears_of_My_Soul
Loaded /home/vasile/personal/bkrpr/Tears_of_My_Soul
Traceback (most recent call last):
  File "/home/vasile/personal/bkrpr/GUI/notebook.py", line 408, in _destroy_cb
    self.parent.start.update(M)
AttributeError: 'NoneType' object has no attribute 'start'
Traceback (most recent call last):
  File "/home/vasile/personal/bkrpr/GUI/notebook.py", line 408, in _destroy_cb
    self.parent.start.update(M)
AttributeError: 'NoneType' object has no attribute 'start'
Traceback (most recent call last):
  File "/home/vasile/personal/bkrpr/GUI/notebook.py", line 408, in _destroy_cb
    self.parent.start.update(M)
AttributeError: 'NoneType' object has no attribute 'start'
Traceback (most recent call last):
  File "/home/vasile/personal/bkrpr/GUI/notebook.py", line 408, in _destroy_cb
    self.parent.start.update(M)
AttributeError: 'NoneType' object has no attribute 'start'

Changed in bkrpr:
importance: Undecided → Low
Revision history for this message
James Vasile (james.vasile) wrote :

The exit functions should cancel any existing processing before they shut down the app. Adding that functionality takes this out of the category of quick bugs.

Revision history for this message
James Vasile (james.vasile) wrote :

It looks like there's a problem in the order the destroy methods are getting called. We can probably simplify that stuff to eliminate the problem.

Revision history for this message
James Vasile (james.vasile) wrote :

New, exciting error message to replace the old ones!

bkrpr.py:241: GtkWarning: gtk_widget_destroy: assertion `GTK_IS_WIDGET (widget)' failed
  gtk.main()

This is failing, I think, on calling destroy on notebook (or some widget in the notebook).

Changed in bkrpr:
status: New → In Progress
Revision history for this message
James Vasile (james.vasile) wrote :

This is a problem in the GTK version, which will soon be abandoned. The wx branch does not display this behavior.

Changed in bkrpr:
assignee: nobody → james.vasile
milestone: none → 0.2
Changed in bkrpr:
status: In Progress → Fix Committed
Revision history for this message
Karl Fogel (kfogel) wrote :

When you change status to "fix committed", I expect to see a fix committed. But it sounds like this is more like "invalid": that is, the code is changing or has changed in such a way as to make the bug go away, even though no fix was really committed.

Or use the "fix committed" status but just explain that it's not a particular commit, but rather the general progress on the wx branch that fixed this.

Changed in bkrpr:
status: Fix Committed → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.