[evolution] I#1503 - PreferPlain: Deadlock when opening a message in composer



commit 25e954da5be82ffc91c0a34c8d2f925e3a3fe999
Author: Milan Crha <mcrha redhat com>
Date:   Mon May 24 21:56:29 2021 +0200

    I#1503 - PreferPlain: Deadlock when opening a message in composer
    
    Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/1503

 src/modules/prefer-plain/e-mail-parser-prefer-plain.c | 6 ++++++
 1 file changed, 6 insertions(+)
---
diff --git a/src/modules/prefer-plain/e-mail-parser-prefer-plain.c 
b/src/modules/prefer-plain/e-mail-parser-prefer-plain.c
index ed2d44f6ed..a2d98f4694 100644
--- a/src/modules/prefer-plain/e-mail-parser-prefer-plain.c
+++ b/src/modules/prefer-plain/e-mail-parser-prefer-plain.c
@@ -386,6 +386,12 @@ empe_prefer_plain_parse (EMailParserExtension *extension,
                if (emp_pp->mode != ONLY_PLAIN)
                        return FALSE;
 
+               /* The convert schedules a timeout GSource on the main thread and waits for an EFlag,
+                  which causes a deadlock of the main thread. This can happen when opening a message
+                  in the composer. Skip the plugin in this case. */
+               if (e_util_is_main_thread (NULL))
+                       return FALSE;
+
                if (!e_mail_part_is_attachment (part)) {
                        gchar *content;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]