Bug 528311 - GtkTextView validation assertion failure running solfege
Summary: GtkTextView validation assertion failure running solfege
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: solfege
Version: 12
Hardware: x86_64
OS: Linux
low
medium
Target Milestone: ---
Assignee: Christian Krause
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: abrt_hash:86fd4f0a84f7c1d22384deef87e...
: 528619 568212 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-10-11 07:40 UTC by Renich Bon Ciric
Modified: 2010-04-20 13:20 UTC (History)
9 users (show)

Fixed In Version: solfege-3.16.0-1.fc13
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-04-20 13:00:09 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: backtrace (6.46 KB, text/plain)
2009-10-11 07:40 UTC, Renich Bon Ciric
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Launchpad 425505 0 None None None Never

Description Renich Bon Ciric 2009-10-11 07:40:09 UTC
abrt detected a crash.


How to reproduce
-----
1.
2.
3.


Additional information
======


Attached files
----
backtrace

cmdline
-----
/usr/bin/python /usr/libexec/solfege-bin 


component
-----
python


executable
-----
/usr/bin/python


kernel
-----
2.6.31.1-56.fc12.x86_64


package
-----
python-2.6.2-2.fc12


reason
-----
Process was terminated by signal 6

Comment 1 Renich Bon Ciric 2009-10-11 07:40:12 UTC
Created attachment 364365 [details]
File: backtrace

Comment 2 Dave Malcolm 2009-10-12 18:09:08 UTC
Thank you for taking the time to report this bug report.

It looks like a g_assert selftest failed somewhere inside /usr/lib64/libgtk-x11-2.0.so.0 whilst running solfege.  I believe that more precise information on the failure is being sent to "stderr", but that information didn't make it into this report.  If you run the program by hand from a terminal, does more error information show up on the terminal?

In addition, unfortunately, the stack trace is not very useful in determining the cause of the crash, because there is not a symbolic stack trace. In order to get a symbolic stack trace, the appropriate debuginfo packages need to be installed. In order to accomplish this, you can run the command: 

    debuginfo-install gtk2

Please see http://fedoraproject.org/wiki/StackTraces for more information about stack traces. 

(I'm reassigning this bug report's component from "python" to "solfege" in the hope that this is a known issue)

Comment 3 Renich Bon Ciric 2009-10-12 22:33:38 UTC
Thank you for such a detailed response! ;=)

Well, it was ABRT that generated this report. I'll install the debuginfo packages to see if I can attach a better stack trace next time.

Here's the error output and the steps it took to reproduce

1. Open solfege from commandlime (same result of not from commandline)
1.1 I get an error message that says: 

No module named _solfege_c_midi

You should configure sound from the preferences window, and try to use an external midi player. Or try to recompile the program and check for error messages to see why the module is not built.

2. Go to File>Preferences>Sound Setup
3. Choose "Use external midi player"
4. Click "Test" button.
5. Close the window
6. Now, on the welcome message, click the "Prev" link and it crashes.

ABRT detects this crash as a Python crash.

Here's the output:

[renich@introdesk ~]$ solfege 
Solfege will use fakesynth
info: ignoring duplicate tone: (NoteOnEvent, pitch:48, vel:100, time:(Rat 0/1))
info: not stopping, not playing now: (NoteOffEvent, pitch:48, vel:100, time:(Rat 1/4))
info: ignoring duplicate tone: (NoteOnEvent, pitch:52, vel:100, time:(Rat 1/4))
info: not stopping, not playing now: (NoteOffEvent, pitch:52, vel:100, time:(Rat 1/2))
info: ignoring duplicate tone: (NoteOnEvent, pitch:55, vel:100, time:(Rat 1/2))
info: not stopping, not playing now: (NoteOffEvent, pitch:55, vel:100, time:(Rat 5/8))
Playing /tmp/tmp7AsgGm.mid
MIDI file: /tmp/tmp7AsgGm.mid
Format: 1  Tracks: 1  Divisions: 96
Playing time: ~5 seconds
Notes cut: 0
Notes lost totally: 0
/usr/share/solfege/src/mainwin.py:938: GtkWarning: gtktextview.c:4567: somehow some text lines were modified or scrolling occurred since the last validation of lines on the screen - may be a text widget bug.
  gtk.main()

**
Gtk:ERROR:gtktextview.c:4568:gtk_text_view_paint: code should not be reached
/usr/bin/solfege: line 13:  4101 Aborted                 (core dumped) $solfegebin
/usr/bin/solfege: line 17: kill: (4100) - No such process

Comment 4 Dave Malcolm 2009-10-12 22:48:36 UTC
Thanks for the extra info; looks like something's going badly wrong inside the GtkTextView code.  Having a backtrace with the extra debuginfo would help track things down.

I'm not familiar with solfege.  Looks like either solfege is doing something unusual with the GtkTextView widget, or there's a bug in pygtk's wrapper for that widget, or there's something I'm not thinking of.  Hope this is helpful.

Comment 5 Renich Bon Ciric 2009-10-13 05:54:17 UTC
Ok, abrt did it:
https://bugzilla.redhat.com/show_bug.cgi?id=528619

It posted it there...

Comment 6 Dave Malcolm 2009-10-13 17:53:56 UTC
*** Bug 528619 has been marked as a duplicate of this bug. ***

Comment 7 Dave Malcolm 2009-10-13 17:58:33 UTC
Attachment 364550 [details] has the more detailed backtrace.

It shows that the
  if (!text_view->onscreen_validated)
    {
      g_warning (G_STRLOC ": somehow some text lines were modified or scrolling occurred since the last validation of lines on the screen - may be a text widget bug.");
      g_assert_not_reached ();
    }
clause within gtk_text_view_paint is being executed.

Comment 8 Bug Zapper 2009-11-16 13:29:50 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 9 Christian Krause 2010-02-07 19:28:57 UTC
I can easily reproduce the issue, but I I don't have a solution yet. The same issue was reported for Ubuntu, but also without a solution yet.

Upstream is currently working on a new major release with a polished GUI which doesn't seem to have this kind of issue.

Comment 10 Christian Krause 2010-02-25 22:39:52 UTC
*** Bug 568212 has been marked as a duplicate of this bug. ***

Comment 11 Christian Krause 2010-03-08 19:59:58 UTC
(In reply to comment #7)
> Attachment 364550 [details] has the more detailed backtrace.
> 
> It shows that the
>   if (!text_view->onscreen_validated)
>     {
>       g_warning (G_STRLOC ": somehow some text lines were modified or scrolling
> occurred since the last validation of lines on the screen - may be a text
> widget bug.");
>       g_assert_not_reached ();
>     }
> clause within gtk_text_view_paint is being executed.    

Dave, do you have any idea how the problem could be tracked down? In general, if the interpreter itselfs crashs (or aborts caused by an exception in the native code), I certainly tend to say that it is a bug in the native code. Even if there would be something wrong in solfege's python code, the interpreter should in the worst case generate a python exception which could be handled by solfege.

Additionally I've asked the author and he told me that this problem will not be addressed from his side since this code will go away in the new major release (unstable releases available).

So seeing the problem just from solfege's side, I think I'll package the development version soon. I've already built and tested it a little bit and it looks quite stable so far.

Do you think it would be necessary to address the python/python gtk binding problem itself any further?

Comment 12 Dave Malcolm 2010-03-08 20:40:56 UTC
Christian: I've done quite a bit of work in F13, adding hooks to python-debuginfo to make it easier to see what's going on in Python code (https://fedoraproject.org/wiki/Features/EasierPythonDebugging ).

However, I took a look at the backtraces and I don't think that the Python side of things is at fault; I see a pure C traceback all the way from g_main_loop_run upwards.  So right now I think this is a bug in GtkTextView (I could well be wrong, though).

I've taken the liberty of CCing mclasen; Matthias, any ideas what's wrong here?

Comment 13 Christian Krause 2010-03-19 21:40:11 UTC
(In reply to comment #12)
> However, I took a look at the backtraces and I don't think that the Python side
> of things is at fault; I see a pure C traceback all the way from
> g_main_loop_run upwards.  So right now I think this is a bug in GtkTextView (I
> could well be wrong, though).
 
> I've taken the liberty of CCing mclasen; Matthias, any ideas what's wrong here?    

*ping* Matthias - do you have an idea what could be wrong here? Unfortunately solfege's upstream is not interested in fixing bugs in the old, stable version since the problematic code was completely removed in the new UI in their development version.

It would be great if you could probably give a hint! Thank you very much in advance.

Comment 14 Matthias Clasen 2010-03-19 22:02:45 UTC
No, I don't

Comment 15 Fedora Update System 2010-04-02 22:53:44 UTC
solfege-3.16.0-1.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/solfege-3.16.0-1.fc13

Comment 16 Fedora Update System 2010-04-02 22:55:14 UTC
solfege-3.16.0-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/solfege-3.16.0-1.fc12

Comment 17 Christian Krause 2010-04-02 23:00:51 UTC
Unfortunately I could not really solve the issue itself, but upstream has just released a new major release which does not contain the problematic code anymore.

Once the update hits updates-testing, it would be great if you could try out the new release and give some feedback in bodhi. Thanks!

Comment 18 Renich Bon Ciric 2010-04-03 19:41:19 UTC
Sure thing! I0'll check it out and tell you what happened.

Comment 19 Renich Bon Ciric 2010-04-03 20:00:58 UTC
It seems to work fine; good job ;)

Comment 20 Fedora Update System 2010-04-06 19:54:42 UTC
solfege-3.16.0-1.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update solfege'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/solfege-3.16.0-1.fc13

Comment 21 Fedora Update System 2010-04-09 01:34:01 UTC
solfege-3.16.0-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update solfege'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/solfege-3.16.0-1.fc12

Comment 22 Fedora Update System 2010-04-20 13:00:03 UTC
solfege-3.16.0-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 23 Fedora Update System 2010-04-20 13:20:33 UTC
solfege-3.16.0-1.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.