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 704494 - EStockRequest calls into GTK+ from worker thread
EStockRequest calls into GTK+ from worker thread
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
3.8.x (obsolete)
Other Linux
: Normal critical
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
: 704781 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-07-18 18:41 UTC by André Klapper
Modified: 2013-07-25 09:19 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description André Klapper 2013-07-18 18:41:15 UTC
Evolution 3.8.3 on F19, IMAP+ account.

$:andre\> gdb evolution 
GNU gdb (GDB) Fedora (7.6-30.fc19)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/evolution...Reading symbols from /usr/lib/debug/usr/bin/evolution.debug...done.
done.
(gdb) run
Starting program: /usr/bin/evolution 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/libthread_db.so.1".
Traceback (most recent call last):
  File "/usr/share/gdb/auto-load/usr/lib/libgobject-2.0.so.0.3600.3-gdb.py", line 9, in <module>
    from gobject import register
  File "/usr/share/glib-2.0/gdb/gobject.py", line 3, in <module>
    import gdb.backtrace
ImportError: No module named backtrace
[New Thread 0xb7bf9b40 (LWP 4513)]
[New Thread 0xb71ffb40 (LWP 4514)]

** (evolution:4508): CRITICAL **: categories_icon_theme_hack: assertion `filename != NULL && *filename != '\0'' failed
[New Thread 0xb67ffb40 (LWP 4515)]
[New Thread 0xb5dffb40 (LWP 4516)]
Detaching after fork from child process 4519.
[New Thread 0xaf6d8b40 (LWP 4527)]
[New Thread 0xaeed7b40 (LWP 4528)]
[New Thread 0xae6d6b40 (LWP 4529)]
[New Thread 0xaded5b40 (LWP 4530)]
[New Thread 0xad6d4b40 (LWP 4531)]
[New Thread 0xaced3b40 (LWP 4532)]
[New Thread 0xac6d2b40 (LWP 4533)]
[New Thread 0xabed1b40 (LWP 4534)]
[New Thread 0xab6d0b40 (LWP 4535)]
[New Thread 0xaaecfb40 (LWP 4536)]
[New Thread 0xaa6ceb40 (LWP 4538)]
[New Thread 0xa9ecdb40 (LWP 4539)]
[New Thread 0xa96ccb40 (LWP 4540)]
[Thread 0xaeed7b40 (LWP 4528) exited]
[Thread 0xabed1b40 (LWP 4534) exited]
[Thread 0xab6d0b40 (LWP 4535) exited]
[Thread 0xaced3b40 (LWP 4532) exited]
[Thread 0xad6d4b40 (LWP 4531) exited]
[Thread 0xac6d2b40 (LWP 4533) exited]
[Thread 0xa96ccb40 (LWP 4540) exited]
[Thread 0xa9ecdb40 (LWP 4539) exited]
[New Thread 0xa9ecdb40 (LWP 4545)]
[New Thread 0xa96ccb40 (LWP 4546)]
[New Thread 0xac6d2b40 (LWP 4547)]
[Thread 0xaded5b40 (LWP 4530) exited]
[New Thread 0xaded5b40 (LWP 4548)]
[Thread 0xaf6d8b40 (LWP 4527) exited]
[Thread 0xaaecfb40 (LWP 4536) exited]
No bp log location saved, using default.
[000:000] Browser XEmbed support present: 1
[000:006] Browser toolkit is Gtk2.
[000:007] Using Gtk2 toolkit
No bp log location saved, using default.
[001:333] Warning(optionsfile.cc:47): Load: Could not open file, err=2
[001:333] No bp log location saved, using default.
[001:333] Browser XEmbed support present: 1
[001:333] Browser toolkit is Gtk2.
[001:333] Using Gtk2 toolkit
[000:000] Warning(optionsfile.cc:47): Load: Could not open file, err=2
[000:000] No bp log location saved, using default.
Detaching after fork from child process 4551.
[New Thread 0xaaecfb40 (LWP 4553)]
[New Thread 0xaf6d8b40 (LWP 4554)]
[New Thread 0xad6d4b40 (LWP 4555)]
[Thread 0xae6d6b40 (LWP 4529) exited]
java version "1.7.0_25"
OpenJDK Runtime Environment (fedora-2.3.10.4.fc19-i386)
OpenJDK Server VM (build 23.7-b01, mixed mode)
[New Thread 0xae6d6b40 (LWP 4568)]
[Thread 0xaa6ceb40 (LWP 4538) exited]
[New Thread 0xaa6ceb40 (LWP 4570)]
[New Thread 0xa71ffb40 (LWP 4571)]
[New Thread 0xa69feb40 (LWP 4572)]
[New Thread 0xa61fdb40 (LWP 4573)]
[New Thread 0xa59fcb40 (LWP 4574)]
[Thread 0xa71ffb40 (LWP 4571) exited]
[New Thread 0xa71ffb40 (LWP 4575)]
[New Thread 0xa4dfbb40 (LWP 4576)]
[New Thread 0xa45fab40 (LWP 4577)]
[New Thread 0xa3df9b40 (LWP 4578)]
[New Thread 0xa35f8b40 (LWP 4579)]
[New Thread 0xa2df7b40 (LWP 4580)]
[New Thread 0xa25f6b40 (LWP 4581)]
[New Thread 0xa1df5b40 (LWP 4582)]
[New Thread 0xa15f4b40 (LWP 4583)]
[Thread 0xa2df7b40 (LWP 4580) exited]
[Thread 0xa3df9b40 (LWP 4578) exited]
[Thread 0xa35f8b40 (LWP 4579) exited]
[Thread 0xa4dfbb40 (LWP 4576) exited]
[Thread 0xa25f6b40 (LWP 4581) exited]
[Thread 0xa71ffb40 (LWP 4575) exited]
[Thread 0xa45fab40 (LWP 4577) exited]
[Thread 0xa15f4b40 (LWP 4583) exited]
[Thread 0xa1df5b40 (LWP 4582) exited]
[New Thread 0xa15f4b40 (LWP 4586)]
[Thread 0xa15f4b40 (LWP 4586) exited]
[New Thread 0xa15f4b40 (LWP 4587)]
[Thread 0xa15f4b40 (LWP 4587) exited]
[Thread 0xae6d6b40 (LWP 4568) exited]
[New Thread 0xae6d6b40 (LWP 4594)]
[New Thread 0xa15f4b40 (LWP 4595)]
[Thread 0xa15f4b40 (LWP 4595) exited]
[New Thread 0xa15f4b40 (LWP 4597)]
[New Thread 0xa1df5b40 (LWP 4598)]
[Thread 0xa1df5b40 (LWP 4598) exited]
[Thread 0xa15f4b40 (LWP 4597) exited]
[New Thread 0xa15f4b40 (LWP 4600)]
[New Thread 0xa1df5b40 (LWP 4601)]
[New Thread 0xa45fab40 (LWP 4602)]
[New Thread 0xa3df9b40 (LWP 4603)]
[New Thread 0xa35f8b40 (LWP 4604)]
[New Thread 0xa2df7b40 (LWP 4605)]
[New Thread 0xa25f6b40 (LWP 4606)]
[New Thread 0xa0df3b40 (LWP 4609)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xae6d6b40 (LWP 4594)]
icon_info_uncached (icon_info=0x0) at gtkicontheme.c:730
730	  GtkIconTheme *icon_theme = icon_info->in_cache;
(gdb) thread apply all bt

Thread 48 (Thread 0xa1df5b40 (LWP 4601))

  • #0 find_image_offset
    at gtkiconcache.c line 255
  • #1 _gtk_icon_cache_get_icon_flags
    at gtkiconcache.c line 292
  • #2 theme_dir_get_icon_suffix
    at gtkicontheme.c line 2468
  • #3 theme_lookup_icon
    at gtkicontheme.c line 2531
  • #4 choose_icon
    at gtkicontheme.c line 1663
  • #5 gtk_icon_theme_lookup_icon
    at gtkicontheme.c line 1842
  • #6 gtk_icon_theme_load_icon
  • #7 render_icon_name_pixbuf
    at gtkiconfactory.c line 1579
  • #8 find_and_render_icon_source
    at gtkiconfactory.c line 1651
  • #9 gtk_icon_set_render_icon_pixbuf
    at gtkiconfactory.c line 1749
  • #10 handle_stock_request
    at e-stock-request.c line 131
  • #11 run_in_thread
    at gsimpleasyncresult.c line 871
  • #12 io_job_thread
    at gioscheduler.c line 89
  • #13 g_task_thread_pool_thread
    at gtask.c line 1242
  • #14 g_thread_pool_thread_proxy
    at gthreadpool.c line 309
  • #15 g_thread_proxy
    at gthread.c line 798
  • #16 start_thread
    at pthread_create.c line 308
  • #17 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 131

Thread 47 (Thread 0xa15f4b40 (LWP 4600))

  • #0 find_image_offset
    at gtkiconcache.c line 255
  • #1 _gtk_icon_cache_get_icon_flags
    at gtkiconcache.c line 292
  • #2 theme_dir_get_icon_suffix
    at gtkicontheme.c line 2468
  • #3 theme_lookup_icon
    at gtkicontheme.c line 2531
  • #4 choose_icon
    at gtkicontheme.c line 1663
  • #5 gtk_icon_theme_lookup_icon
    at gtkicontheme.c line 1842
  • #6 gtk_icon_theme_load_icon
  • #7 render_icon_name_pixbuf
    at gtkiconfactory.c line 1579
  • #8 find_and_render_icon_source
    at gtkiconfactory.c line 1651
  • #9 gtk_icon_set_render_icon_pixbuf
    at gtkiconfactory.c line 1749
  • #10 handle_stock_request
    at e-stock-request.c line 131
  • #11 run_in_thread
    at gsimpleasyncresult.c line 871
  • #12 io_job_thread
    at gioscheduler.c line 89
  • #13 g_task_thread_pool_thread
    at gtask.c line 1242
  • #14 g_thread_pool_thread_proxy
    at gthreadpool.c line 309
  • #15 g_thread_proxy
    at gthread.c line 798
  • #16 start_thread
    at pthread_create.c line 308
  • #17 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 131

Thread 43 (Thread 0xae6d6b40 (LWP 4594))

  • #0 icon_info_uncached
    at gtkicontheme.c line 730
  • #1 g_hash_table_insert_node
    at ghash.c line 922
  • #2 g_hash_table_insert_internal
    at ghash.c line 1155
  • #3 choose_icon
    at gtkicontheme.c line 1738
  • #4 gtk_icon_theme_lookup_icon
    at gtkicontheme.c line 1842
  • #5 gtk_icon_theme_load_icon
  • #6 render_icon_name_pixbuf
    at gtkiconfactory.c line 1579
  • #7 find_and_render_icon_source
    at gtkiconfactory.c line 1651
  • #8 gtk_icon_set_render_icon_pixbuf
    at gtkiconfactory.c line 1749
  • #9 handle_stock_request
    at e-stock-request.c line 131
  • #10 run_in_thread
    at gsimpleasyncresult.c line 871
  • #11 io_job_thread
    at gioscheduler.c line 89
  • #12 g_task_thread_pool_thread
    at gtask.c line 1242
  • #13 g_thread_pool_thread_proxy
    at gthreadpool.c line 309
  • #14 g_thread_proxy
    at gthread.c line 798
  • #15 start_thread
    at pthread_create.c line 308
  • #16 clone
    at ../sysdeps/unix/sysv/linux/i386/clone.S line 131

Thread 1 (Thread 0xb7fbf900 (LWP 4508))

  • #1 applyValue
    at Source/WebCore/css/StyleBuilder.h line 47
  • #2 WebCore::StyleResolver::applyProperty
    at Source/WebCore/css/StyleResolver.cpp line 2786
  • #3 WebCore::StyleResolver::applyProperties<(WebCore::StyleResolver::StyleApplicationPass)1>
    at Source/WebCore/css/StyleResolver.cpp line 2185
  • #4 WebCore::StyleResolver::applyMatchedProperties<(WebCore::StyleResolver::StyleApplicationPass)1>
    at Source/WebCore/css/StyleResolver.cpp line 2213
  • #5 WebCore::StyleResolver::applyMatchedProperties
  • #6 WebCore::StyleResolver::styleForElement
    at Source/WebCore/css/StyleResolver.cpp line 1432
  • #7 WebCore::Element::styleForRenderer
    at Source/WebCore/dom/Element.cpp line 1360
  • #8 WebCore::NodeRenderingContext::createRendererForElementIfNeeded
    at Source/WebCore/dom/NodeRenderingContext.cpp line 249
  • #9 WebCore::Element::createRendererIfNeeded
    at Source/WebCore/dom/Element.cpp line 1251
  • #10 WebCore::Element::attach
    at Source/WebCore/dom/Element.cpp line 1260
  • #11 attachChildren
    at Source/WebCore/dom/ContainerNode.h line 197
  • #12 WebCore::ContainerNode::attach
    at Source/WebCore/dom/ContainerNode.cpp line 824
  • #13 WebCore::Element::attach
    at Source/WebCore/dom/Element.cpp line 1274
  • #14 reattach
    at Source/WebCore/dom/Node.h line 881
  • #15 WebCore::Element::recalcStyle
    at Source/WebCore/dom/Element.cpp line 1385
  • #16 WebCore::Element::recalcStyle
    at Source/WebCore/dom/Element.cpp line 1450
  • #17 WebCore::Document::recalcStyle
    at Source/WebCore/dom/Document.cpp line 1803
  • #18 WebCore::Document::styleResolverChanged
    at Source/WebCore/dom/Document.cpp line 3173
  • #19 WebCore::Document::didRemoveAllPendingStylesheet
    at Source/WebCore/dom/Document.cpp line 2782
  • #20 WebCore::DocumentStyleSheetCollection::removePendingSheet
    at Source/WebCore/dom/DocumentStyleSheetCollection.cpp line 231
  • #21 WebCore::HTMLLinkElement::removePendingSheet
    at Source/WebCore/html/HTMLLinkElement.cpp line 503
  • #22 WebCore::HTMLLinkElement::sheetLoaded
    at Source/WebCore/html/HTMLLinkElement.cpp line 386
  • #23 WebCore::StyleSheetContents::checkLoaded
    at Source/WebCore/css/StyleSheetContents.cpp line 355
  • #24 WebCore::HTMLLinkElement::setCSSStyleSheet
    at Source/WebCore/html/HTMLLinkElement.cpp line 334
  • #25 WebCore::CachedCSSStyleSheet::checkNotify
    at Source/WebCore/loader/cache/CachedCSSStyleSheet.cpp line 122
  • #26 WebCore::CachedCSSStyleSheet::data
    at Source/WebCore/loader/cache/CachedCSSStyleSheet.cpp line 110
  • #27 WebCore::SubresourceLoader::didFinishLoading
    at Source/WebCore/loader/SubresourceLoader.cpp line 278
  • #28 WebCore::ResourceLoader::didFinishLoading
    at Source/WebCore/loader/ResourceLoader.cpp line 466
  • #29 WebCore::readCallback
    at Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp line 1327
  • #30 async_ready_callback_wrapper
    at ginputstream.c line 530
  • #31 g_task_return_now
    at gtask.c line 1105
  • #32 complete_in_idle_cb
    at gtask.c line 1114
  • #33 g_idle_dispatch
    at gmain.c line 5205
  • #34 g_main_dispatch
    at gmain.c line 3054
  • #35 g_main_context_dispatch
    at gmain.c line 3630
  • #36 g_main_context_iterate
    at gmain.c line 3701
  • #37 g_main_loop_run
    at gmain.c line 3895
  • #38 gtk_main
    at gtkmain.c line 1156
  • #39 main
    at main.c line 707

(gdb) list
725	
726	/* The icon info was removed from the icon_info_hash hash table */
727	static void
728	icon_info_uncached (GtkIconInfo *icon_info)
729	{
730	  GtkIconTheme *icon_theme = icon_info->in_cache;
731	
732	  DEBUG_CACHE (("removing %p (%s %d 0x%x) from cache (icon_them: %p)  (cache size %d)\n",
733			icon_info,
734			g_strjoinv (",", icon_info->key.icon_names),
(gdb)
Comment 1 Matthew Barnes 2013-07-18 19:24:38 UTC
EStockRequest calling GtkIconTheme functions from a worker thread.

That's a bad one.  I'm surprised we're not getting a lot more crashes from that.
Comment 3 David Woodhouse 2013-07-25 09:19:49 UTC
*** Bug 704781 has been marked as a duplicate of this bug. ***