Bug 1128607 - changing email preference headers evolution-3.8.5-22.el7_0.1: evolution killed by SIGSEGV
Summary: changing email preference headers evolution-3.8.5-22.el7_0.1: evolution kille...
Keywords:
Status: CLOSED DUPLICATE of bug 1123136
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: evolution
Version: 7.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Matthew Barnes
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-08-11 08:06 UTC by Mark Wielaard
Modified: 2018-12-06 17:42 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-08-25 14:42:12 UTC


Attachments (Terms of Use)

Description Mark Wielaard 2014-08-11 08:06:12 UTC
Description of problem:

Crash when changing preferences.

Version-Release number of selected component (if applicable):

evolution-3.8.5-22.el7_0

How reproducible:

Always.

Steps to Reproduce:

1. Go to the email preferences, in particular the Headers
that are displayed (Edit -> Preferences -> Mail Preferences -> Headers).
Just clicking on the (unchecked) "Mailer" header name causes the crash.

Actual results:

Crash.

Expected results:

Change email header display preference.

Additional info:

I tried to change the email preferences, in particular the Headers
that are displayed (Edit -> Preferences -> Mail Preferences -> Headers).
Just clicking on the (unchecked) "Mailer" header name causes the crash.

Using GDB one can observe that the crash happens in
modules/settings/e-settings-mail-formatter.c
(settings_mail_formatter_headers_changed_cb) line 71:

      if (key) {
              GSList *link;

              for (ii = 0, link = extension->priv->old_headers; headers && headers[ii]; ii++, link = g_slist_next (link)) {
                      if (g_strcmp0 (link->data, headers[ii]) != 0)
                              break;
              }

Line 71 is the if statement with g_strcmp0. The crash happens because link
is NULL.

This code seems to have been introduced in the RHEL evolution specific
patch evolution-3.8.5-labels-gsettings-busy-loop.patch.

The following change to check for a NULL link fixes the issue for me:

--- a/evolution-3.8.5-labels-gsettings-busy-loop.patch
+++ b/evolution-3.8.5-labels-gsettings-busy-loop.patch
@@ -2326,7 +2326,7 @@ diff -up evolution-3.8.5/modules/settings/e-settings-mail-formatter.c.labels-gse
 +      if (key) {
 +              GSList *link;
 +
-+              for (ii = 0, link = extension->priv->old_headers; headers && headers[ii]; ii++, link = g_slist_next (link)) {
++              for (ii = 0, link = extension->priv->old_headers; link && headers && headers[ii]; ii++, link = g_slist_next (link)) {
 +                      if (g_strcmp0 (link->data, headers[ii]) != 0)
 +                              break;
 +              }

Comment 2 Milan Crha 2014-08-25 14:42:12 UTC

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


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