GNOME Bugzilla – Bug 313015
libsexy + gtk 2.8 causes 100% CPU load from X
Last modified: 2005-08-24 20:06:46 UTC
So, compile everything with teh sexy, and after entering characters in the main
text entry field, X goes all to hell. (This is a very new X from ubuntu, CVS
gtk, new-ish everything.) Nuke libsexy and rebuild and things are fine again. I
doubt it is an xchat-gnome bug per se, but that is what is revealing it so I
figured this was the least bad place to start.
After some conversation in IRC, this definitely looks like a libsexy/gtk2.8
thing- libsexy against 2.6 seems to work for everyone in IRC, and everyone with
the problem is running 2.8.
This can be duplicated by checking out libsexy, building it, and running
tests/test-spell-entry. Given that the duplication case is easier than I
thought, and that this happens only with gtk 2.8 and not 2.6, reassigning to gtk.
svn co http://osiris.chipx86.com/svn/osiris-misc/trunk/libsexy/
Can you provide a stacktrace from when X goes to hell ?
Not very exciting; I have the feeling I'm doing something wrong, but...
Looks like a problem with PANGO_ERROR_UNDERLINE.
If I comment out the setting of that attribute in sexy-spell-entry.c,
things return to normal.
Seems to be a problem with the implementation of squiggly underlines in
PangoCairoRenderer. They work fine in GtkTextView and GtkLabel, which use
GdkPangoRenderer. Curiously, the two implementations are almost the same,
modulo some y axis flipping.
Underline was being rendered 1024 times too big in both directions.
2005-08-24 Owen Taylor <firstname.lastname@example.org>
* pango/pangocairo-render.c (draw_error_underline): convert
from Pango units to doubles, fix some coordinate space problems
that had previously been fixed in GTK+. (#313015, Luis Villa)