diff --git a/.gitignore b/.gitignore index 9647d15..524bd63 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ gnome-disk-utility-2.30.1.tar.bz2 /gnome-disk-utility-3.8.2.tar.xz /gnome-disk-utility-3.9.0.tar.xz /gnome-disk-utility-3.10.0.tar.xz +/gnome-disk-utility-3.12.0.tar.xz diff --git a/0001-Be-more-careful-with-XIDs.patch b/0001-Be-more-careful-with-XIDs.patch deleted file mode 100644 index 4fff501..0000000 --- a/0001-Be-more-careful-with-XIDs.patch +++ /dev/null @@ -1,32 +0,0 @@ -From d133f801c28971ac90756910b2c6e54727cca23e Mon Sep 17 00:00:00 2001 -From: Matthias Clasen -Date: Wed, 8 Jan 2014 18:51:53 -0500 -Subject: [PATCH 1/2] Be more careful with XIDs - -When an invalid XID is specified, we end up calling -gdk_window_set_transient_for with a NULL window. This leads -to a crash, so don't do it, and instead silently ignore -the invalid XID. - -https://bugzilla.gnome.org/show_bug.cgi?id=721278 ---- - src/disks/gduformatvolumedialog.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/disks/gduformatvolumedialog.c b/src/disks/gduformatvolumedialog.c -index c737cb0..f741ade 100644 ---- a/src/disks/gduformatvolumedialog.c -+++ b/src/disks/gduformatvolumedialog.c -@@ -181,7 +181,8 @@ gdu_format_volume_dialog_show_internal (UDisksClient *client, - GdkWindow *foreign_window = gdk_x11_window_foreign_new_for_display (gdk_display_get_default (), parent_xid); - if (!gtk_widget_get_realized (data->dialog)) - gtk_widget_realize (data->dialog); -- gdk_window_set_transient_for (gtk_widget_get_window (data->dialog), foreign_window); -+ if (foreign_window != NULL) -+ gdk_window_set_transient_for (gtk_widget_get_window (data->dialog), foreign_window); - } - - gtk_dialog_set_default_response (GTK_DIALOG (data->dialog), GTK_RESPONSE_OK); --- -1.8.4.2 - diff --git a/0002-Make-dialog-work-with-xid-again.patch b/0002-Make-dialog-work-with-xid-again.patch deleted file mode 100644 index 0985adc..0000000 --- a/0002-Make-dialog-work-with-xid-again.patch +++ /dev/null @@ -1,110 +0,0 @@ -From cf87263973a2d6b71bc1feec792453c39e81b008 Mon Sep 17 00:00:00 2001 -From: Matthias Clasen -Date: Wed, 8 Jan 2014 19:25:03 -0500 -Subject: [PATCH 2/2] Make dialog work with --xid again - -When triggering an async operation from a GApplicationCommandline, -we must use g_application_hold/release to ensure the application -instance stays around until the operation is done. - -https://bugzilla.gnome.org/show_bug.cgi?id=721278 ---- - src/disks/gduapplication.c | 4 +++- - src/disks/gduformatvolumedialog.c | 19 +++++++++++++++---- - src/disks/gduformatvolumedialog.h | 4 +++- - 3 files changed, 21 insertions(+), 6 deletions(-) - -diff --git a/src/disks/gduapplication.c b/src/disks/gduapplication.c -index 4d0938a..8984c56 100644 ---- a/src/disks/gduapplication.c -+++ b/src/disks/gduapplication.c -@@ -265,7 +265,9 @@ gdu_application_command_line (GApplication *_app, - } - else if (opt_format) - { -- gdu_format_volume_dialog_show_for_xid (app->client, opt_xid, object_to_select); -+ g_application_hold (_app); -+ gdu_format_volume_dialog_show_for_xid (app->client, opt_xid, object_to_select, -+ (GCallback)g_application_release, _app); - } - - if (opt_restore_disk_image != NULL) -diff --git a/src/disks/gduformatvolumedialog.c b/src/disks/gduformatvolumedialog.c -index f741ade..2e0ca79 100644 ---- a/src/disks/gduformatvolumedialog.c -+++ b/src/disks/gduformatvolumedialog.c -@@ -33,11 +33,16 @@ typedef struct - - GtkWidget *contents_box; - GtkWidget *create_filesystem_widget; -+ -+ GCallback finished_cb; -+ gpointer cb_data; - } FormatVolumeData; - - static void - format_volume_data_free (FormatVolumeData *data) - { -+ if (data->finished_cb) -+ ((GDestroyNotify) data->finished_cb) (data->cb_data); - g_clear_object (&data->parent_window); - g_object_unref (data->object); - g_object_unref (data->block); -@@ -144,13 +149,17 @@ static void - gdu_format_volume_dialog_show_internal (UDisksClient *client, - GtkWindow *parent_window, - gint parent_xid, -- UDisksObject *object) -+ UDisksObject *object, -+ GCallback finished_cb, -+ gpointer cb_data) - { - GduApplication *app = GDU_APPLICATION (g_application_get_default ()); - FormatVolumeData *data; - gint response; - - data = g_new0 (FormatVolumeData, 1); -+ data->finished_cb = finished_cb; -+ data->cb_data = cb_data; - data->parent_window = (parent_window != NULL) ? g_object_ref (parent_window) : NULL; - data->object = g_object_ref (object); - data->block = udisks_object_get_block (object); -@@ -250,9 +259,11 @@ gdu_format_volume_dialog_show_internal (UDisksClient *client, - void - gdu_format_volume_dialog_show_for_xid (UDisksClient *client, - gint xid, -- UDisksObject *object) -+ UDisksObject *object, -+ GCallback finished_cb, -+ gpointer cb_data) - { -- gdu_format_volume_dialog_show_internal (client, NULL, xid, object); -+ gdu_format_volume_dialog_show_internal (client, NULL, xid, object, finished_cb, cb_data); - } - - void -@@ -260,5 +271,5 @@ gdu_format_volume_dialog_show (GduWindow *window, - UDisksObject *object) - { - gdu_format_volume_dialog_show_internal (gdu_window_get_client (window), GTK_WINDOW (window), -- -1, object); -+ -1, object, NULL, NULL); - } -diff --git a/src/disks/gduformatvolumedialog.h b/src/disks/gduformatvolumedialog.h -index 62a43ef..3721fbb 100644 ---- a/src/disks/gduformatvolumedialog.h -+++ b/src/disks/gduformatvolumedialog.h -@@ -19,7 +19,9 @@ void gdu_format_volume_dialog_show (GduWindow *window, - UDisksObject *object); - void gdu_format_volume_dialog_show_for_xid (UDisksClient *client, - gint xid, -- UDisksObject *object); -+ UDisksObject *object, -+ GCallback finished_cb, -+ gpointer cb_data); - - G_END_DECLS - --- -1.8.4.2 - diff --git a/gnome-disk-utility.spec b/gnome-disk-utility.spec index 8632979..6fdfad1 100644 --- a/gnome-disk-utility.spec +++ b/gnome-disk-utility.spec @@ -10,16 +10,12 @@ Summary: Disks Name: gnome-disk-utility -Version: 3.10.0 -Release: 2%{?dist} +Version: 3.12.0 +Release: 1%{?dist} License: GPLv2+ Group: System Environment/Libraries URL: http://git.gnome.org/browse/gnome-disk-utility -Source0: http://download.gnome.org/sources/gnome-disk-utility/3.10/%{name}-%{version}.tar.xz - -# upstream fixes -Patch0: 0001-Be-more-careful-with-XIDs.patch -Patch1: 0002-Make-dialog-work-with-xid-again.patch +Source0: http://download.gnome.org/sources/gnome-disk-utility/3.12/%{name}-%{version}.tar.xz BuildRequires: glib2-devel >= %{glib2_version} BuildRequires: gtk3-devel >= %{gtk3_version} @@ -64,8 +60,6 @@ fstab/crypttab editing, ATA SMART and other features %prep %setup -q -%patch0 -p1 -%patch1 -p1 %build %if 0%{?enable_autoreconf} @@ -80,13 +74,11 @@ make install DESTDIR=$RPM_BUILD_ROOT rm -f $RPM_BUILD_ROOT%{_libdir}/gnome-settings-daemon-3.0/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/gnome-settings-daemon-3.0/*.a -desktop-file-install --delete-original \ - --dir $RPM_BUILD_ROOT%{_datadir}/applications \ - $RPM_BUILD_ROOT%{_datadir}/applications/gnome-disks.desktop \ - $RPM_BUILD_ROOT%{_datadir}/applications/gnome-disk-image-mounter.desktop - %find_lang %{name} +%check +desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop + %post for d in hicolor HighContrast ; do touch --no-create %{_datadir}/icons/$d &>/dev/null || : @@ -119,8 +111,6 @@ done %{_datadir}/glib-2.0/schemas/org.gnome.Disks.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.gdu-sd.gschema.xml -%dir %{_datadir}/gnome-disk-utility -%{_datadir}/gnome-disk-utility/*.ui %{_datadir}/icons/hicolor/*/apps/gnome-disks* %{_datadir}/icons/HighContrast/*/apps/gnome-disks.png @@ -132,6 +122,9 @@ done %doc README AUTHORS NEWS COPYING %changelog +* Mon Apr 14 2014 Richard Hughes - 3.12.0-1 +- Update to 3.12.0 + * Thu Jan 9 2014 Matthias Clasen - 3.10.0-2 - Make formatting from nautilus work again diff --git a/sources b/sources index fa1d44b..a4c5e0e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d89ad8a648a2003266737c00e36c40e6 gnome-disk-utility-3.10.0.tar.xz +1cd6f0b8e434f35dc9dd18e1cd082be4 gnome-disk-utility-3.12.0.tar.xz