After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 323430 - Evolution will hang when viewing a mail contains many continuous empty lines
Evolution will hang when viewing a mail contains many continuous empty lines
Status: RESOLVED DUPLICATE of bug 306279
Product: GtkHtml
Classification: Other
Component: Rendering
unspecified
Other All
: Normal critical
: ---
Assigned To: gtkhtml-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2005-12-07 05:56 UTC by Harry Lu
Modified: 2006-01-05 08:38 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12


Attachments
A test mail (26.20 KB, text/plain)
2005-12-07 05:57 UTC, Harry Lu
Details
A trace (845.09 KB, text/plain)
2005-12-07 06:05 UTC, Harry Lu
Details

Description Harry Lu 2005-12-07 05:56:46 UTC
When viewing a mail contains over thounds of continuous lines, Evolution will 
consume over 90% of CPU and hang there.  Restart Evolution will still hang 
there.

Please try to import the attached mail, then view it.

As I can see from trace, it might be a bug of gtkhtml.  Please see 
html_clueflow_real_get_direction() in htmlclueflow.c.  Remove the following two 
lines seems fixes the problem:

		if (child == HTML_CLUE (o)->head && html_object_get_length 
(child) == 0 && o->prev)
			return html_object_get_direction (o->prev);

I guess the problem is there are thousands of empty lines, so there are 
thousands of empty htmlclueflows. To get direction of each of them, there are 
many calculations.
Comment 1 Harry Lu 2005-12-07 05:57:52 UTC
Created attachment 55729 [details]
A test mail

The test mail
Comment 2 Harry Lu 2005-12-07 06:05:48 UTC
Created attachment 55730 [details]
A trace

A trace
Comment 3 Rohini 2006-01-04 05:32:05 UTC
Multiple calls to html_object_get_direction() causes the problem. Removing  call to html_object_get_direction solves this issue.

Confirming bug
Comment 4 Harish Krishnaswamy 2006-01-05 08:38:41 UTC

*** This bug has been marked as a duplicate of 306279 ***