aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2012-09-10 16:40:43 +0800
committerMilan Crha <mcrha@redhat.com>2012-09-10 16:40:43 +0800
commita276c7ce42292e05963a878cc799e92e78fc7e7b (patch)
tree5f4b4ff18c561f0a8cca1f3f3833245e7ea323c7
parent8abf9de5babcfd7e4d3fd30d972e5c2bc13eeee3 (diff)
downloadgsoc2013-evolution-a276c7ce42292e05963a878cc799e92e78fc7e7b.tar.gz
gsoc2013-evolution-a276c7ce42292e05963a878cc799e92e78fc7e7b.tar.zst
gsoc2013-evolution-a276c7ce42292e05963a878cc799e92e78fc7e7b.zip
Bug #683548 - Initialize webkit's web view before other threads are run
Just a workaround until Webkit upstream has that fixed.
-rw-r--r--shell/main.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/shell/main.c b/shell/main.c
index c954b820bd..06edd9bccd 100644
--- a/shell/main.c
+++ b/shell/main.c
@@ -53,6 +53,8 @@
#include <libedataserverui/libedataserverui.h>
+#include <webkit/webkit.h>
+
#include "e-shell.h"
#include "e-shell-migrate.h"
#include "e-shell-meego.h"
@@ -425,6 +427,17 @@ create_default_shell (void)
return shell;
}
+/* this workarounds https://bugzilla.gnome.org/show_bug.cgi?id=683548
+ and is a replacement of g_type_ensure(), which is part of GLib 2.34,
+ on which Evolution doesn't depend yet
+*/
+static void
+e_ensure_type (GType type)
+{
+ if (G_UNLIKELY (type == (GType) -1))
+ g_warning ("can't happen");
+}
+
gint
main (gint argc,
gchar **argv)
@@ -625,6 +638,10 @@ main (gint argc,
g_object_unref (settings);
#endif
+ /* Workaround https://bugzilla.gnome.org/show_bug.cgi?id=683548 */
+ if (!quit)
+ e_ensure_type (WEBKIT_TYPE_WEB_VIEW);
+
shell = create_default_shell ();
if (quit) {