Accepting request 93768 from home:dimstar:branches:GNOME:Factory

Update to 3.3.2 - stop installing la files alltogether

OBS-URL: https://build.opensuse.org/request/show/93768
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-bluetooth?expand=0&rev=83
This commit is contained in:
Dominique Leuenberger 2011-11-28 08:19:53 +00:00 committed by Git OBS Bridge
parent 8980473aea
commit 7efec250e1
5 changed files with 73 additions and 89 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b399e0855c446bd729900642bd7a64a0189162383de5caaaf0150ee9e2d2121b
size 1350014

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:58c21d26781729ed5b4e80e985f6f37b94af7fb830b525642046750537d16c57
size 1394849

View File

@ -13,11 +13,44 @@ https://bugzilla.gnome.org/show_bug.cgi?id=654172
lib/bluetooth-client.c | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/lib/bluetooth-client.c b/lib/bluetooth-client.c
index 86680c3..d7af201 100644
--- a/lib/bluetooth-client.c
+++ b/lib/bluetooth-client.c
@@ -1021,6 +1021,37 @@ bluetooth_client_set_property (GObject *object,
Index: gnome-bluetooth-3.3.2/lib/bluetooth-client.c
===================================================================
--- gnome-bluetooth-3.3.2.orig/lib/bluetooth-client.c
+++ gnome-bluetooth-3.3.2/lib/bluetooth-client.c
@@ -80,6 +80,7 @@ struct _BluetoothClientPrivate {
Manager *manager;
GtkTreeStore *store;
GtkTreeRowReference *default_adapter;
+ GSList *horrible_workaround_for_leaked_ifaces;
};
enum {
@@ -323,6 +324,7 @@ get_properties_for_iface (GDBusProxy *pr
static GHashTable *
device_list_nodes (Device *device, BluetoothClient *client)
{
+ BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
GHashTable *table;
guint i;
@@ -348,6 +350,8 @@ device_list_nodes (Device *device, Bluet
g_hash_table_lookup (table, BLUEZ_AUDIOSINK_INTERFACE) == NULL) {
continue;
}
+
+ priv->horrible_workaround_for_leaked_ifaces = g_slist_append (priv->horrible_workaround_for_leaked_ifaces, iface);
}
/* And skip interface if it's already in the hash table */
@@ -1001,6 +1005,7 @@ bluez_vanished_cb (GDBusConnection *conn
static void bluetooth_client_init(BluetoothClient *client)
{
BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
+ GSList *l;
priv->store = gtk_tree_store_new(_BLUETOOTH_NUM_COLUMNS, G_TYPE_OBJECT,
G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,
@@ -1260,6 +1265,37 @@ bluetooth_client_set_property (GObject
}
}
@ -55,70 +88,14 @@ index 86680c3..d7af201 100644
static void bluetooth_client_finalize(GObject *client)
{
BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
@@ -1041,6 +1072,8 @@ static void bluetooth_client_finalize(GObject *client)
default_adapter_changed, client);
@@ -1270,11 +1306,22 @@ static void bluetooth_client_finalize(GO
g_object_unref(priv->manager);
+ gtk_tree_model_foreach (GTK_TREE_MODEL(priv->store), disconnect_from_proxy_helper, client);
+
g_object_unref(priv->store);
if (priv->default_adapter)
--
1.7.7
From 63b442bb8a81776887350bad516943ddd61852b8 Mon Sep 17 00:00:00 2001
From: Vincent Untz <vuntz@gnome.org>
Date: Tue, 11 Oct 2011 09:46:52 +0200
Subject: [PATCH 2/2] lib: Do not leak proxies for detectable interfaces of
devices
This avoids signals that will cause crashes.
https://bugzilla.gnome.org/show_bug.cgi?id=654172
---
lib/bluetooth-client.c | 14 ++++++++++++++
1 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/lib/bluetooth-client.c b/lib/bluetooth-client.c
index d7af201..e2f66c7 100644
--- a/lib/bluetooth-client.c
+++ b/lib/bluetooth-client.c
@@ -103,6 +103,7 @@ struct _BluetoothClientPrivate {
DBusGProxy *manager;
GtkTreeStore *store;
GtkTreeRowReference *default_adapter;
+ GSList *horrible_workaround_for_leaked_ifaces;
};
enum {
@@ -266,6 +267,7 @@ device_services_changed (DBusGProxy *iface, const char *property,
static GHashTable *
device_list_nodes (DBusGProxy *device, BluetoothClient *client, gboolean connect_signal)
{
+ BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
GHashTable *table;
guint i;
@@ -333,6 +335,8 @@ device_list_nodes (DBusGProxy *device, BluetoothClient *client, gboolean connect
dbus_g_proxy_connect_signal(iface, "PropertyChanged",
G_CALLBACK(device_services_changed), client, NULL);
}
+
+ priv->horrible_workaround_for_leaked_ifaces = g_slist_append (priv->horrible_workaround_for_leaked_ifaces, iface);
}
}
@@ -1055,6 +1059,7 @@ disconnect_from_proxy_helper (GtkTreeModel *model,
static void bluetooth_client_finalize(GObject *client)
{
BluetoothClientPrivate *priv = BLUETOOTH_CLIENT_GET_PRIVATE(client);
+ GSList *l;
DBG("client %p", client);
@@ -1079,6 +1084,15 @@ static void bluetooth_client_finalize(GObject *client)
if (priv->default_adapter)
gtk_tree_row_reference_free (priv->default_adapter);
@ -134,6 +111,3 @@ index d7af201..e2f66c7 100644
G_OBJECT_CLASS(bluetooth_client_parent_class)->finalize(client);
}
--
1.7.7

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Sat Nov 26 15:16:06 UTC 2011 - dimstar@opensuse.org
- Remove all .la files. gnome-bluetooth-applet.la on its own has
reference to the other la files. Keeping some of them breaks more
than it serves.
-------------------------------------------------------------------
Mon Nov 21 17:03:09 UTC 2011 - dimstar@opensuse.org
- Update to version 3.3.2:
+ Library:
- Clean up public API
- Port to GDBus
- Small UI fixes to the chooser
+ Properties:
- Move to gnome-control-center
+ Wizard:
- Remove special-case Wiimote handling (now in Bluez)
- Remove multi-adapter support
+ Updated translations.
-------------------------------------------------------------------
Mon Oct 17 17:49:47 CEST 2011 - dimstar@opensuse.org

View File

@ -18,18 +18,16 @@
Name: gnome-bluetooth
Version: 3.2.1
Version: 3.3.2
Release: 1
License: GPLv2+
Summary: GNOME Bluetooth graphical utilities
Url: http://live.gnome.org/GnomeBluetooth
Group: System/GUI/GNOME
Source: http://download.gnome.org/sources/gnome-bluetooth/3.2/%{name}-%{version}.tar.bz2
Source: http://download.gnome.org/sources/gnome-bluetooth/3.3/%{name}-%{version}.tar.bz2
Source1: 61-gnome-bluetooth-rfkill.rules
# PATCH-MISSING-TAG -- See http://en.opensuse.org/Packaging/Patches
Patch0: lxde-support.patch
# PATCH-FIX-UPSTREAM gnome-bluetooth-fix-crash.patch bgo#654172 bnc#722722 vuntz@opensuse.org -- Fix various crashes in libgnome-bluetooth due to leaking objects
Patch1: gnome-bluetooth-fix-crash.patch
BuildRequires: fdupes
BuildRequires: gnome-doc-utils-devel
BuildRequires: gobject-introspection-devel
@ -77,13 +75,13 @@ enables you to send files. It is used by the Nautilus component --
select the files you want to send and choose "Send via Bluetooth..."
from the context menu.
%package -n libgnome-bluetooth8
%package -n libgnome-bluetooth9
License: GPLv2+
Summary: GNOME Bluetooth graphical utilities
Group: System/GUI/GNOME
Obsoletes: libgnomebt1 <= 0.12
%description -n libgnome-bluetooth8
%description -n libgnome-bluetooth9
The gnome-bluetooth package contains graphical utilities to setup,
monitor and use Bluetooth devices.
@ -114,7 +112,6 @@ send files over bluetooth.
%setup -q
translation-update-upstream
%patch0 -p1
%patch1 -p1
%if 0%{?BUILD_FROM_VCS}
[ -x ./autogen.sh ] && NOCONFIGURE=1 ./autogen.sh
@ -134,13 +131,8 @@ translation-update-upstream
%install
%makeinstall
# keep libgnome-bluetooth-applet.la
rm -f %{buildroot}%{_libdir}/libgnome-bluetooth.la \
%{buildroot}%{_libdir}/gnome-bluetooth/plugins/*.la \
%{buildroot}%{_libdir}/nautilus-sendto/plugins/*.la \
%{buildroot}/%{_libdir}/control-center-1/panels/libbluetooth.la
find %{buildroot}%{_libdir} -name '*.la' -type f -delete -print
%suse_update_desktop_file bluetooth-applet
%suse_update_desktop_file bluetooth-properties
%suse_update_desktop_file bluetooth-sendto
%suse_update_desktop_file bluetooth-wizard
%find_lang %{name}2 %{?no_lang_C}
@ -167,9 +159,9 @@ rm -rf %{buildroot}
%postun -n nautilus-sendto-plugin-bluetooth
%glib2_gsettings_schema_postun
%post -n libgnome-bluetooth8 -p /sbin/ldconfig
%post -n libgnome-bluetooth9 -p /sbin/ldconfig
%postun -n libgnome-bluetooth8 -p /sbin/ldconfig
%postun -n libgnome-bluetooth9 -p /sbin/ldconfig
%files
%defattr(-, root, root)
@ -184,15 +176,11 @@ rm -rf %{buildroot}
/lib/udev/rules.d/61-gnome-bluetooth-rfkill.rules
%{_bindir}/bluetooth-*
%{_sysconfdir}/xdg/autostart/bluetooth-applet.desktop
%{_datadir}/applications/bluetooth-properties.desktop
%{_datadir}/applications/bluetooth-sendto.desktop
%{_datadir}/applications/bluetooth-wizard.desktop
%{_datadir}/gnome-bluetooth/
%{_datadir}/icons/hicolor/*/*/bluetooth*
%{_mandir}/man1/bluetooth-*
%dir %{_libdir}/control-center-1
%dir %{_libdir}/control-center-1/panels
%{_libdir}/control-center-1/panels/libbluetooth.so
# Own the plugin directory, but exclude the plugin library itself
%dir %{_libdir}/gnome-bluetooth
%{_libdir}/gnome-bluetooth/libgnome-bluetooth-applet.*
@ -203,7 +191,7 @@ rm -rf %{buildroot}
%files lang -f %{name}2.lang
%files -n libgnome-bluetooth8
%files -n libgnome-bluetooth9
%defattr(-,root,root,-)
%{_libdir}/libgnome-bluetooth.so.*
%{_libdir}/girepository-1.0/GnomeBluetooth-1.0.typelib