diff -r 8bc668d886f4 -r 4bb64c5ef111 pidgin/gtkwebview.c --- a/pidgin/gtkwebview.c Sat Aug 04 02:44:52 2012 -0400 +++ b/pidgin/gtkwebview.c Sat Aug 04 02:52:46 2012 -0400 @@ -580,8 +580,8 @@ priv = GTK_WEBVIEW_GET_PRIVATE(webview); g_queue_push_tail(priv->load_queue, GINT_TO_POINTER(LOAD_JS)); g_queue_push_tail(priv->load_queue, g_strdup(script)); - if (!priv->is_loading) - g_idle_add((GSourceFunc)process_load_queue, webview); + if (!priv->is_loading && priv->loader == 0) + priv->loader = g_idle_add((GSourceFunc)process_load_queue, webview); } void @@ -622,8 +622,8 @@ priv = GTK_WEBVIEW_GET_PRIVATE(webview); g_queue_push_tail(priv->load_queue, GINT_TO_POINTER(LOAD_HTML)); g_queue_push_tail(priv->load_queue, g_strdup(html)); - if (!priv->is_loading) - g_idle_add((GSourceFunc)process_load_queue, webview); + if (!priv->is_loading && priv->loader == 0) + priv->loader = g_idle_add((GSourceFunc)process_load_queue, webview); } void