evolution hangs, 100% cpu, apparently in gtk html lib

Bug #347225 reported by Noam Lewis
2
Affects Status Importance Assigned to Milestone
GtkHTML
Expired
Critical
gtkhtml3.14 (Ubuntu)
Invalid
Medium
Ubuntu Desktop Bugs

Bug Description

Binary package hint: evolution

I was composing a reply to a message when hitting some key suddenly caused evolution to go 100% cpu and to hang.
When I debug with gdb, breaking stops at different functions in gtk-html every time (html_text_get_slave_at_offset, for example).

I've attached gdb logs. What else can help?

ProblemType: Bug
Architecture: i386
DistroRelease: Ubuntu 8.10
ExecutablePath: /usr/bin/evolution
Package: evolution 2.24.3-0ubuntu1
ProcEnviron:
 PATH=/home/username/.cabal/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/real/RealPlayer
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: evolution
Uname: Linux 2.6.27-11-generic i686

Tags: apport-bug
Revision history for this message
Noam Lewis (lenoam) wrote :
Revision history for this message
Noam Lewis (lenoam) wrote :

Firstly, I was about to attach a core dump but realized that it probably contains sensitive information (this is my email client...) I'm leaving the process alive (being traced) for a while, if you have any ideas of things i can do to find the bug.
Secondly, Apparently it's stuck in this function, in the while (1) loop: (gtkhtml/htmlcursor.c: line ~1211)

(Using: libgtkhtml - gtkhtml3.14-3.24.1.1.)

static gboolean
html_cursor_right_edge_of_line (HTMLCursor *cursor, HTMLEngine *engine)
{
 HTMLCursor prev_cursor;
 gint x, y, prev_y;

 g_return_val_if_fail (cursor != NULL, FALSE);
 g_return_val_if_fail (engine != NULL, FALSE);
 g_return_val_if_fail (HTML_IS_ENGINE (engine), FALSE);

 gtk_html_im_reset (engine->widget);

 cursor->have_target_x = FALSE;

 if (engine->need_spell_check)
  html_engine_spell_check_range (engine, engine->cursor, engine->cursor);

 html_cursor_copy (&prev_cursor, cursor);
 html_object_get_cursor_base (cursor->object, engine->painter, cursor->offset,
         &x, &prev_y);

 while (1) {
  if (! right_in_flow (cursor, engine))
   return TRUE;

  html_object_get_cursor_base (cursor->object, engine->painter, cursor->offset,
          &x, &y);

  if (y - cursor->object->ascent > prev_y + prev_cursor.object->descent - 1) {
   html_cursor_copy (cursor, &prev_cursor);
   return TRUE;
  }
  prev_y = y;
  html_cursor_copy (&prev_cursor, cursor);
 }
}

Revision history for this message
Sebastien Bacher (seb128) wrote :

thank you for your bug report, can you add an email example to the bug?

Changed in evolution (Ubuntu):
assignee: nobody → desktop-bugs
importance: Undecided → Medium
status: New → Incomplete
Revision history for this message
Sebastien Bacher (seb128) wrote :

you might also open the bug on bugzilla.gnome.org where the people writting the code will read it

Revision history for this message
Noam Lewis (lenoam) wrote : Re: [Bug 347225] Re: evolution hangs, 100% cpu, apparently in gtk html lib

I can't because i don't know if it will be reproducible (probably not easily)
I should add that the email was in Hebrew and therefore, in the
right-to-left direction (which is probably relevant)

On Mon, Mar 23, 2009 at 3:55 PM, Sebastien Bacher <email address hidden> wrote:
> thank you for your bug report, can you add an email example to the bug?
>
> ** Changed in: evolution (Ubuntu)
>   Importance: Undecided => Medium
>
> ** Changed in: evolution (Ubuntu)
>       Status: New => Incomplete
>
> ** Changed in: evolution (Ubuntu)
>     Assignee: (unassigned) => Ubuntu Desktop Bugs (desktop-bugs)
>
> ** Changed in: gtkhtml3.14 (Ubuntu)
> Sourcepackagename: evolution => gtkhtml3.14
>
> --
> evolution hangs, 100% cpu, apparently in gtk html lib
> https://bugs.launchpad.net/bugs/347225
> You received this bug notification because you are a direct subscriber
> of the bug.
>

Revision history for this message
Noam Lewis (lenoam) wrote :

Bug opened in bugzilla:
http://bugzilla.gnome.org/show_bug.cgi?id=576420

On Mon, Mar 23, 2009 at 4:11 PM, Noam Lewis <email address hidden> wrote:
> I can't because i don't know if it will be reproducible (probably not easily)
> I should add that the email was in Hebrew and therefore, in the
> right-to-left direction (which is probably relevant)
>
> On Mon, Mar 23, 2009 at 3:55 PM, Sebastien Bacher <email address hidden> wrote:
>> thank you for your bug report, can you add an email example to the bug?
>>
>> ** Changed in: evolution (Ubuntu)
>>   Importance: Undecided => Medium
>>
>> ** Changed in: evolution (Ubuntu)
>>       Status: New => Incomplete
>>
>> ** Changed in: evolution (Ubuntu)
>>     Assignee: (unassigned) => Ubuntu Desktop Bugs (desktop-bugs)
>>
>> ** Changed in: gtkhtml3.14 (Ubuntu)
>> Sourcepackagename: evolution => gtkhtml3.14
>>
>> --
>> evolution hangs, 100% cpu, apparently in gtk html lib
>> https://bugs.launchpad.net/bugs/347225
>> You received this bug notification because you are a direct subscriber
>> of the bug.
>>
>

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for sending the bug to GNOME

Changed in gtkhtml3.14 (Ubuntu):
status: Incomplete → Triaged
Changed in gtkhtml:
status: Unknown → New
Changed in gtkhtml:
status: New → Incomplete
Revision history for this message
Pedro Villavicencio (pedro) wrote :

Upstream is requesting more info, is this still an issue with 2.28 on Lucid?

Changed in gtkhtml3.14 (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
Pedro Villavicencio (pedro) wrote :

We are closing this bug report because it lacks the information we need to investigate the problem, as described in the previous comments. Please reopen it if you can give us the missing information, and don't hesitate to submit bug reports in the future. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to New. Thanks again!.

Changed in gtkhtml:
status: Incomplete → Invalid
Changed in gtkhtml3.14 (Ubuntu):
status: Incomplete → Invalid
Changed in gtkhtml:
importance: Unknown → Critical
status: Invalid → Expired
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.