]> www.fi.muni.cz Git - evince.git/commitdiff
Do not acquire fontconfig lock in impress backend, since it is using the
authorCarlos Garcia Campos <carlosgc@gnome.org>
Sun, 21 Jan 2007 18:10:05 +0000 (18:10 +0000)
committerCarlos Garcia Campos <carlosgc@src.gnome.org>
Sun, 21 Jan 2007 18:10:05 +0000 (18:10 +0000)
2007-01-21  Carlos Garcia Campos  <carlosgc@gnome.org>
* backend/impress/impress-document.c:
(impress_document_render_pixbuf):
Do not acquire fontconfig lock in impress backend, since it is using
the main loop for rendering.

svn path=/trunk/; revision=2242

ChangeLog
backend/impress/impress-document.c
shell/ev-view.c

index 00dec9611c24796d6ac2adc5c13175c32b82ea97..af42d1b6bc1943dcd43686efe478422e38843ff3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-01-21  Carlos Garcia Campos  <carlosgc@gnome.org>
+
+       * backend/impress/impress-document.c:
+       (impress_document_render_pixbuf):
+
+       Do not acquire fontconfig lock in impress backend, since it is using
+       the main loop for rendering. 
+
 2007-01-21  Carlos Garcia Campos  <carlosgc@gnome.org>
 
        * po/POTFILES.in: 
index 3ea993d1c8e83a7dc511ae6de1ad8f92a494b8b8..7459dab168c02f246f9f6906a9d8ca61c8c37559 100644 (file)
@@ -357,6 +357,7 @@ imp_render_get_from_drawable (ImpressDocument *impress_document)
                                         0, 0,
                                         0, 0,
                                         PAGE_WIDTH, PAGE_HEIGHT);
+
   g_cond_broadcast (impress_document->cond);
   return FALSE;
 }
@@ -376,10 +377,12 @@ impress_document_render_pixbuf (EvDocument  *document,
   g_mutex_lock (impress_document->mutex);
   impress_document->cond = g_cond_new ();
 
+  ev_document_fc_mutex_unlock ();
   g_idle_add ((GSourceFunc) imp_render_get_from_drawable, impress_document);
-
   g_cond_wait (impress_document->cond, impress_document->mutex);
   g_cond_free (impress_document->cond);
+  ev_document_fc_mutex_lock ();
+
   g_mutex_unlock (impress_document->mutex);
 
   scaled_pixbuf = gdk_pixbuf_scale_simple (impress_document->pixbuf,
index cd6d27ec202a98524839300783124de7b4e13f73..470386450ce582ba42ec34b2cc8dbb43dc6a7a9e 100644 (file)
@@ -1907,7 +1907,7 @@ ev_view_expose_event (GtkWidget      *widget,
                
                area.width = widget->allocation.width;
                area.height = widget->allocation.height;
-               
+
                draw_loading_text (view,
                                   &area,
                                   &(event->area));