rpms/gnome-desktop/devel gnome-desktop-2.19.90-gnome-bg.patch, 1.4, 1.5 gnome-desktop.spec, 1.95, 1.96

Soren Sandmann Pedersen (ssp) fedora-extras-commits at redhat.com
Wed Aug 29 21:32:44 UTC 2007


Author: ssp

Update of /cvs/pkgs/rpms/gnome-desktop/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv17554

Modified Files:
	gnome-desktop-2.19.90-gnome-bg.patch gnome-desktop.spec 
Log Message:
Delete cache on uri switch

gnome-desktop-2.19.90-gnome-bg.patch:

Index: gnome-desktop-2.19.90-gnome-bg.patch
===================================================================
RCS file: /cvs/pkgs/rpms/gnome-desktop/devel/gnome-desktop-2.19.90-gnome-bg.patch,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- gnome-desktop-2.19.90-gnome-bg.patch	29 Aug 2007 20:46:39 -0000	1.4
+++ gnome-desktop-2.19.90-gnome-bg.patch	29 Aug 2007 21:32:11 -0000	1.5
@@ -1,5 +1,5 @@
 --- gnome-desktop-2.19.90/configure.in.gnome-bg	2007-08-13 20:04:02.000000000 -0400
-+++ gnome-desktop-2.19.90/configure.in	2007-08-28 14:01:15.000000000 -0400
++++ gnome-desktop-2.19.90/configure.in	2007-08-29 17:17:58.000000000 -0400
 @@ -51,10 +51,10 @@
  AC_SUBST(GNOME_DISTRIBUTOR)
  AC_SUBST(GNOME_DATE)
@@ -16,8 +16,8 @@
  # As a special favour for vuntz, support --disable-deprecations
  
 --- /dev/null	2007-08-15 18:04:26.337218222 -0400
-+++ gnome-desktop-2.19.90/libgnome-desktop/gnome-bg.c	2007-08-29 16:17:12.000000000 -0400
-@@ -0,0 +1,1824 @@
++++ gnome-desktop-2.19.90/libgnome-desktop/gnome-bg.c	2007-08-29 17:22:34.000000000 -0400
+@@ -0,0 +1,1836 @@
 +/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*-
 +   
 +gnomebg.c: Object for the desktop background.
@@ -925,6 +925,19 @@
 +	g_free (ent);
 +}
 +
++static void
++bound_cache (GnomeBG *bg)
++{
++      while (g_list_length (bg->file_cache) >= CACHE_SIZE) {
++	      GList *last_link = g_list_last (bg->file_cache);
++	      FileCacheEntry *ent = last_link->data;
++	      
++	      file_cache_entry_delete (ent);
++	      
++	      bg->file_cache = g_list_delete_link (bg->file_cache, last_link);
++      }
++}
++
 +static const FileCacheEntry *
 +file_cache_lookup (GnomeBG *bg, FileType type, const char *uri)
 +{
@@ -940,31 +953,32 @@
 +	return NULL;
 +}
 +
-+static void
-+file_cache_add_pixbuf (GnomeBG *bg,
-+		       const char *uri,
-+		       GdkPixbuf *pixbuf)
++static FileCacheEntry *
++file_cache_entry_new (GnomeBG *bg,
++		      FileType type,
++		      const char *uri)
 +{
-+	FileCacheEntry *ent;
++	FileCacheEntry *ent = g_new0 (FileCacheEntry, 1);
 +
-+	g_assert (!file_cache_lookup (bg, PIXBUF, uri));
++	g_assert (!file_cache_lookup (bg, type, uri));
 +	
-+	while (g_list_length (bg->file_cache) > CACHE_SIZE) {
-+		GList *last_link = g_list_last (bg->file_cache);
-+		FileCacheEntry *ent = last_link->data;
-+
-+		file_cache_entry_delete (ent);
++	ent->type = type;
++	ent->uri = g_strdup (uri);
 +
-+		bg->file_cache = g_list_delete_link (bg->file_cache, last_link);
-+	}
++	bg->file_cache = g_list_prepend (bg->file_cache, ent);
 +
-+	ent = g_new0 (FileCacheEntry, 1);
++	bound_cache (bg);
 +	
-+	ent->type = PIXBUF;
-+	ent->uri = g_strdup (uri);
-+	ent->u.pixbuf = pixbuf;
++	return ent;
++}
 +
-+	bg->file_cache = g_list_prepend (bg->file_cache, ent);
++static void
++file_cache_add_pixbuf (GnomeBG *bg,
++		       const char *uri,
++		       GdkPixbuf *pixbuf)
++{
++	FileCacheEntry *ent = file_cache_entry_new (bg, PIXBUF, uri);
++	ent->u.pixbuf = pixbuf;
 +}
 +
 +static void
@@ -972,15 +986,8 @@
 +			  const char *uri,
 +			  GdkPixbuf *pixbuf)
 +{
-+	FileCacheEntry *ent = g_new0 (FileCacheEntry, 1);
-+	
-+	g_assert (!file_cache_lookup (bg, THUMBNAIL, uri));
-+
-+	ent->type = THUMBNAIL;
-+	ent->uri = g_strdup (uri);
++	FileCacheEntry *ent = file_cache_entry_new (bg, THUMBNAIL, uri);
 +	ent->u.thumbnail = pixbuf;
-+
-+	bg->file_cache = g_list_prepend (bg->file_cache, ent);
 +}
 +
 +static void
@@ -988,15 +995,8 @@
 +			   const char *uri,
 +			   SlideShow *show)
 +{
-+	FileCacheEntry *ent = g_new0 (FileCacheEntry, 1);
-+
-+	g_assert (!file_cache_lookup (bg, SLIDESHOW, uri));
-+
-+	ent->type = SLIDESHOW;
-+	ent->uri = g_strdup (uri);
++	FileCacheEntry *ent = file_cache_entry_new (bg, SLIDESHOW, uri);
 +	ent->u.slideshow = show;
-+
-+	bg->file_cache = g_list_prepend (bg->file_cache, ent);
 +}
 +
 +static GdkPixbuf *
@@ -1299,6 +1299,18 @@
 +static void
 +clear_cache (GnomeBG *bg)
 +{
++	GList *list;
++
++	if (bg->file_cache) {
++		for (list = bg->file_cache; list != NULL; list = list->next) {
++			FileCacheEntry *ent = list->data;
++			
++			file_cache_entry_delete (ent);
++		}
++		g_list_free (bg->file_cache);
++		bg->file_cache = NULL;
++	}
++	
 +	if (bg->pixbuf_cache) {
 +		g_object_unref (bg->pixbuf_cache);
 +		
@@ -1843,7 +1855,7 @@
 +	return FALSE;
 +}
 --- gnome-desktop-2.19.90/libgnome-desktop/Makefile.am.gnome-bg	2007-08-13 20:04:00.000000000 -0400
-+++ gnome-desktop-2.19.90/libgnome-desktop/Makefile.am	2007-08-28 14:01:15.000000000 -0400
++++ gnome-desktop-2.19.90/libgnome-desktop/Makefile.am	2007-08-29 17:17:58.000000000 -0400
 @@ -18,7 +18,8 @@
  libgnome_desktop_2_la_SOURCES = \
  	gnome-desktop-item.c	\
@@ -1855,7 +1867,7 @@
  libgnome_desktop_2_la_LIBADD = \
  	$(GNOME_DESKTOP_LIBS)
 --- gnome-desktop-2.19.90/libgnome-desktop/libgnomeui/Makefile.am.gnome-bg	2007-08-13 20:04:00.000000000 -0400
-+++ gnome-desktop-2.19.90/libgnome-desktop/libgnomeui/Makefile.am	2007-08-28 14:01:15.000000000 -0400
++++ gnome-desktop-2.19.90/libgnome-desktop/libgnomeui/Makefile.am	2007-08-29 17:17:58.000000000 -0400
 @@ -1,4 +1,5 @@
  libgnomeui_desktopdir = $(includedir)/gnome-desktop-2.0/libgnomeui
  libgnomeui_desktop_HEADERS = \
@@ -1864,7 +1876,7 @@
 +	gnome-hint.h       \
 +	gnome-bg.h
 --- /dev/null	2007-08-15 18:04:26.337218222 -0400
-+++ gnome-desktop-2.19.90/libgnome-desktop/libgnomeui/gnome-bg.h	2007-08-28 14:01:15.000000000 -0400
++++ gnome-desktop-2.19.90/libgnome-desktop/libgnomeui/gnome-bg.h	2007-08-29 17:17:58.000000000 -0400
 @@ -0,0 +1,99 @@
 +/* gnome-bg.h - 
 +


Index: gnome-desktop.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gnome-desktop/devel/gnome-desktop.spec,v
retrieving revision 1.95
retrieving revision 1.96
diff -u -r1.95 -r1.96
--- gnome-desktop.spec	29 Aug 2007 20:47:37 -0000	1.95
+++ gnome-desktop.spec	29 Aug 2007 21:32:11 -0000	1.96
@@ -12,7 +12,7 @@
 Summary: Package containing code shared among gnome-panel, gnome-session, nautilus, etc
 Name: gnome-desktop
 Version: 2.19.90
-Release: 5%{?dist}
+Release: 6%{?dist}
 URL: http://www.gnome.org
 Source0: http://download.gnome.org/sources/gnome-desktop/2.19/%{name}-%{version}.tar.bz2
 License: GPLv2+ and LGPLv2+
@@ -125,6 +125,9 @@
 %doc %{_datadir}/gtk-doc/html/gnome-desktop/
 
 %changelog
+* Wed Aug 29 2007 Soren Sandmann <sandmann at redhat.com> - 2.19.90-6
+- Delete cache on URI switch. Various cleanups.
+
 * Wed Aug 29 2007 Soren Sandmann <sandmann at redhat.com> - 2.19.90-5
 - Fix unbounded caching. Bug 247943.
 




More information about the fedora-extras-commits mailing list