Bug 1368612

Summary: Ensure EMailConfigPage::changed signal is emitted in the main/UI thread
Product: [Fedora] Fedora Reporter: 汪明衡 <ifoolb>
Component: evolution-mapiAssignee: Milan Crha <mcrha>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: mbarnes, mcrha
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: evolution-3.21.92 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-08-22 10:01:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
output of gdb evolution --ex r --ex bt --ex "t a a bt" --ex q none

Description 汪明衡 2016-08-20 00:50:48 UTC
Created attachment 1192373 [details]
output of gdb evolution --ex r --ex bt --ex "t a a bt" --ex q

Description of problem:


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


How reproducible:


Steps to Reproduce:
1. setup an email as server type 'Exchange MAPI'
2. fill configuration information and click 'Authenticate'
3. enter password an click 'OK'

Actual results:
evolution receives SIGSEGV

Expected results:
finish the exchange account configuration.

Additional info:

As suggested by Milan Crha, here is the debug output. There are brunch of missing packages, but the connection speed is too slow. If it's insufficient I'll reproduce the result information when they are all downloaded.

Comment 1 Milan Crha 2016-08-22 10:01:03 UTC
Thanks for a bug report. The backtrace is perfectly fine. It shows that the evolution calls gtk+ functions from a dedicated thread, not from a UI (main) thread, which it shouldn't do.

Interestingly, the issue is still present in the upstream development version, it's only probably a matter of luck that it doesn't exhibit always (or on other machines).

I fixed this upstream with the below change:

Created commit 1363f90 in evo master (3.21.92+) [1]

[1] https://git.gnome.org/browse/evolution/commit/?id=1363f90