GNOME Bugzilla – Bug 677438
[abrt] [POP3] Crash on disconnect with ongoing message download
Last modified: 2015-08-31 10:26:11 UTC
Moving this from a downstream bug report: https://bugzilla.redhat.com/show_bug.cgi?id=828352 [abrt] evolution-3.4.2-1.fc17: __strlen_sse2_pminub: Process /usr/bin/evolution was killed by signal 11 (SIGSEGV) libreport version: 2.0.10 abrt_version: 2.0.10 backtrace_rating: 4 cmdline: evolution crash_function: __strlen_sse2_pminub executable: /usr/bin/evolution kernel: 3.3.7-1.fc17.x86_64 time: Po 4. jún 2012, 18:46:17 CEST :(evolution:30347): camel-pop3-provider-WARNING **: Bad server response: 224 7239644 :(evolution:30347): camel-WARNING **: CamelPOP3Folder::refresh_info_sync() reported failure without setting its GError Core was generated by `evolution'. Program terminated with signal 11, Segmentation fault.
+ Trace 230309
Thread 7 (Thread 0x7f265eb55700 (LWP 32255))
Thread 1 (Thread 0x7f265df21700 (LWP 32284))
Another downstream crash from 3.8.3: https://bugzilla.redhat.com/show_bug.cgi?id=981897 The camel-pop3-engine.c:366 is: 362 break; 363 } 364 365 g_queue_push_tail (&pe->done, pc); 366 pe->sentlen -= strlen (pc->data); 367 368 /* Set next command */ 369 pe->current = g_queue_pop_head (&pe->active);
+ Trace 232204
Thread 1 (Thread 0xa24c5b40 (LWP 4036))
And one from 3.10.4: https://bugzilla.redhat.com/show_bug.cgi?id=1143037 Description of problem: Closed laptop by mistake when collecting mail. On resume evolution crashed. Version-Release number of selected component: evolution-3.10.4-3.fc20 Additional info: reporter: libreport-2.2.3 backtrace_rating: 4 cmdline: evolution crash_function: strlen executable: /usr/bin/evolution kernel: 3.16.2-200.fc20.x86_64
+ Trace 234103
Thread 1 (Thread 0x7f5192c8f700 (LWP 3928))
I've just got a downstream bug report from 3.16.4: https://bugzilla.redhat.com/show_bug.cgi?id=1254283 Its backtrace shows what might cause the crash here: The user has configured (at least one) POP3 account, which had been downloading a message, while the user changed some setting on that account and when he confirmed the changes the evolution disconnected the POP3 account, to make sure the new changes are used. The problem was that the ongoing command was processed twice, effectively causing double free.
I fixed this by adding a busy lock on the pop3_engin, which makes sure there will not be done multiple operations on one engine instance at the same time. Created commit b7ed85f in eds master (3.17.92+)