Date: Monday, October 17, 2011 @ 10:53:13 Author: ibiru Revision: 140620
update to 3.2.1 Modified: gnome-settings-daemon/trunk/PKGBUILD Deleted: gnome-settings-daemon/trunk/fix_color_crash.patch -----------------------+ PKGBUILD | 11 +- fix_color_crash.patch | 186 ------------------------------------------------ 2 files changed, 4 insertions(+), 193 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2011-10-17 14:45:25 UTC (rev 140619) +++ PKGBUILD 2011-10-17 14:53:13 UTC (rev 140620) @@ -2,8 +2,8 @@ # Maintainer: Jan de Groot <j...@archlinux.org> pkgname=gnome-settings-daemon -pkgver=3.2.0 -pkgrel=2 +pkgver=3.2.1 +pkgrel=1 pkgdesc="The GNOME Settings daemon" arch=('i686' 'x86_64') license=('GPL') @@ -15,14 +15,11 @@ groups=('gnome') replaces=(gnome-settings-daemon-pulse) conflicts=(gnome-settings-daemon-pulse) -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz -fix_color_crash.patch) -sha256sums=('a85242ce60b9c9bb3fbad124ee06430a408f39fa31d2d4ea29dc179db724447b' - 'b249d21702d4cf9a3a8dc177ba17c00d33e8e742e548811552d79ddeff1e91e3') +source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz) +sha256sums=('1015b8a12483e91ddc67e891b66207a70339a341a051507aad9a6a15fbfcb78d') build() { cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i "$srcdir/fix_color_crash.patch" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ --libexecdir=/usr/lib/gnome-settings-daemon --disable-static --enable-pulse \ --with-pnpids=/usr/share/libgnome-desktop-3.0/pnp.ids Deleted: fix_color_crash.patch =================================================================== --- fix_color_crash.patch 2011-10-17 14:45:25 UTC (rev 140619) +++ fix_color_crash.patch 2011-10-17 14:53:13 UTC (rev 140620) @@ -1,186 +0,0 @@ -From fd4c0057b8e3f72b30acb6f1c82688e29b31c0c0 Mon Sep 17 00:00:00 2001 -From: Richard Hughes <rich...@hughsie.com> -Date: Mon, 03 Oct 2011 08:52:06 +0000 -Subject: color: Fix a crash if ~/.local is deleted at runtime - -Resolves https://bugzilla.gnome.org/show_bug.cgi?id=660664 ---- -diff --git a/plugins/color/gcm-profile-store.c b/plugins/color/gcm-profile-store.c -index d325162..3dde406 100644 ---- a/plugins/color/gcm-profile-store.c -+++ b/plugins/color/gcm-profile-store.c -@@ -254,6 +254,8 @@ gcm_profile_store_process_child (GcmProfileStore *profile_store, - - /* check we're not in a loop */ - helper = gcm_profile_store_find_directory (profile_store, path); -+ if (helper == NULL) -+ goto out; - if (helper->depth > GCM_PROFILE_STORE_MAX_RECURSION_LEVELS) { - g_warning ("recursing more than %i levels deep is insane", - GCM_PROFILE_STORE_MAX_RECURSION_LEVELS); --- -cgit v0.9.0.2 -From e3313eb16fd2cb25ab3fbc010837b910e525acf6 Mon Sep 17 00:00:00 2001 -From: Bastien Nocera <had...@hadess.net> -Date: Mon, 03 Oct 2011 10:02:56 +0000 -Subject: color: Simplify gcm_profile_store_mkdir_with_parents() - -No need to check for the path existing, -g_file_make_directory_with_parents() will do that for us. ---- -(limited to 'plugins/color/gcm-profile-store.c') - -diff --git a/plugins/color/gcm-profile-store.c b/plugins/color/gcm-profile-store.c -index 3dde406..d705604 100644 ---- a/plugins/color/gcm-profile-store.c -+++ b/plugins/color/gcm-profile-store.c -@@ -419,19 +419,12 @@ static gboolean - gcm_profile_store_mkdir_with_parents (const gchar *filename, GError **error) - { - gboolean ret; -- GFile *file = NULL; - - /* ensure destination exists */ -- ret = g_file_test (filename, G_FILE_TEST_EXISTS); -- if (!ret) { -- file = g_file_new_for_path (filename); -- ret = g_file_make_directory_with_parents (file, NULL, error); -- if (!ret) -- goto out; -- } --out: -- if (file != NULL) -- g_object_unref (file); -+ file = g_file_new_for_path (filename); -+ ret = g_file_make_directory_with_parents (file, NULL, error); -+ g_object_unref (file); -+ - return ret; - } - --- -cgit v0.9.0.2 -From a711ba99fd5a9bc7bf79dcdc763deed39440eb86 Mon Sep 17 00:00:00 2001 -From: Richard Hughes <rich...@hughsie.com> -Date: Mon, 03 Oct 2011 10:38:36 +0000 -Subject: Make commit e3313eb16fd2cb25ab3fbc010837b910e525acf6 actually compile - ---- -(limited to 'plugins/color/gcm-profile-store.c') - -diff --git a/plugins/color/gcm-profile-store.c b/plugins/color/gcm-profile-store.c -index d705604..0b3cfa0 100644 ---- a/plugins/color/gcm-profile-store.c -+++ b/plugins/color/gcm-profile-store.c -@@ -419,6 +419,7 @@ static gboolean - gcm_profile_store_mkdir_with_parents (const gchar *filename, GError **error) - { - gboolean ret; -+ GFile *file; - - /* ensure destination exists */ - file = g_file_new_for_path (filename); --- -cgit v0.9.0.2 -From 42fa1af884fda1590bc7af0f78e4fc70d0eb621b Mon Sep 17 00:00:00 2001 -From: Richard Hughes <rich...@hughsie.com> -Date: Mon, 03 Oct 2011 10:34:04 +0000 -Subject: color: Cancel any in-progress directory searching on plugin unload - ---- -diff --git a/plugins/color/gcm-profile-store.c b/plugins/color/gcm-profile-store.c -index 0b3cfa0..bcb7adc 100644 ---- a/plugins/color/gcm-profile-store.c -+++ b/plugins/color/gcm-profile-store.c -@@ -34,6 +34,7 @@ struct _GcmProfileStorePrivate - { - GPtrArray *filename_array; - GPtrArray *directory_array; -+ GCancellable *cancellable; - }; - - enum { -@@ -326,7 +327,7 @@ gcm_profile_store_next_files_cb (GObject *source_object, - g_file_enumerator_next_files_async (enumerator, - 5, - G_PRIORITY_LOW, -- NULL, -+ profile_store->priv->cancellable, - gcm_profile_store_next_files_cb, - user_data); - -@@ -343,6 +344,7 @@ gcm_profile_store_enumerate_children_cb (GObject *source_object, - gchar *path = NULL; - GError *error = NULL; - GFileEnumerator *enumerator; -+ GcmProfileStore *profile_store = GCM_PROFILE_STORE (user_data); - - enumerator = g_file_enumerate_children_finish (G_FILE (source_object), - res, -@@ -360,7 +362,7 @@ gcm_profile_store_enumerate_children_cb (GObject *source_object, - g_file_enumerator_next_files_async (enumerator, - 5, - G_PRIORITY_LOW, -- NULL, -+ profile_store->priv->cancellable, - gcm_profile_store_next_files_cb, - user_data); - g_object_unref (enumerator); -@@ -407,7 +409,7 @@ gcm_profile_store_search_path (GcmProfileStore *profile_store, const gchar *path - G_FILE_ATTRIBUTE_STANDARD_TYPE, - G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS, - G_PRIORITY_LOW, -- NULL, -+ profile_store->priv->cancellable, - gcm_profile_store_enumerate_children_cb, - profile_store); - out: -@@ -416,14 +418,16 @@ out: - } - - static gboolean --gcm_profile_store_mkdir_with_parents (const gchar *filename, GError **error) -+gcm_profile_store_mkdir_with_parents (const gchar *filename, -+ GCancellable *cancellable, -+ GError **error) - { - gboolean ret; - GFile *file; - - /* ensure destination exists */ - file = g_file_new_for_path (filename); -- ret = g_file_make_directory_with_parents (file, NULL, error); -+ ret = g_file_make_directory_with_parents (file, cancellable, error); - g_object_unref (file); - - return ret; -@@ -438,7 +442,9 @@ gcm_profile_store_search (GcmProfileStore *profile_store) - - /* get Linux per-user profiles */ - path = g_build_filename (g_get_user_data_dir (), "icc", NULL); -- ret = gcm_profile_store_mkdir_with_parents (path, &error); -+ ret = gcm_profile_store_mkdir_with_parents (path, -+ profile_store->priv->cancellable, -+ &error); - if (!ret) { - g_warning ("failed to create directory on startup: %s", error->message); - g_error_free (error); -@@ -480,6 +486,7 @@ static void - gcm_profile_store_init (GcmProfileStore *profile_store) - { - profile_store->priv = GCM_PROFILE_STORE_GET_PRIVATE (profile_store); -+ profile_store->priv->cancellable = g_cancellable_new (); - profile_store->priv->filename_array = g_ptr_array_new_with_free_func (g_free); - profile_store->priv->directory_array = g_ptr_array_new_with_free_func ((GDestroyNotify) gcm_profile_store_helper_free); - } -@@ -490,6 +497,8 @@ gcm_profile_store_finalize (GObject *object) - GcmProfileStore *profile_store = GCM_PROFILE_STORE (object); - GcmProfileStorePrivate *priv = profile_store->priv; - -+ g_cancellable_cancel (profile_store->priv->cancellable); -+ g_object_unref (profile_store->priv->cancellable); - g_ptr_array_unref (priv->filename_array); - g_ptr_array_unref (priv->directory_array); - --- -cgit v0.9.0.2