- Update to 2.28.0

This commit is contained in:
Bastien Nocera 2009-09-19 14:52:40 +00:00
parent e1f8e3d102
commit d2b6e200e9
5 changed files with 8 additions and 107 deletions

View File

@ -1 +1 @@
gnome-bluetooth-2.27.90.tar.bz2
gnome-bluetooth-2.28.0.tar.bz2

View File

@ -1,66 +0,0 @@
From b4b046cd37324454c7125d345cceabb5c6f61612 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Thu, 3 Sep 2009 18:17:43 +0100
Subject: [PATCH] =?utf-8?q?Bug=C2=A0594055=20-=20applet=20fails=20to=20connect=20to=20any=20disconnected=20audio=20device?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Hunted down by Peter Hurley <phurley@charter.net>.
Description
If the remote device is disconnected when the applet starts, the applet
will be unable to initiate connection to the audio interface of the
device.
Cause
Incorrect use of g_hash_table_lookup in the device_list_nodes() function
in lib/bluetooth-client.c
Discussion
For a given device, device_list_nodes() loops through the known
detectable interfaces (those in detectable_interfaces[]) and adds
them to the returned hash table if calling the interfaces's
.GetProperties dbus method returns true.
The value of the "Connected" property is then stored as the associated
value with the interface name as the key in the hash table.
The *connectable* interface "org.bluez.Audio" is only added if at least
either of the *detectable* interfaces "org.bluez.Headset" or
"org.bluez.AudioSink" were added the the hash table in previous
iterations within device_list_nodes().
However, the test for whether those *detectable* interfaces were added
is not correct. Currently, g_hash_table_lookup() is used to determine
if the interface names are in the hash table. g_hash_table_lookup()
will return NULL if the the key is not present in the hash table,
OTHERWISE IT RETURNS THE VALUE ASSOCIATED WITH THE KEY. If that value
is 0 (== BLUETOOTH_STATUS_DISCONNECTED), the logic mistakenly believes
that the key is not present in the hash table, and as a result, fails
to add the only connectable audio interface "org.bluez.Audio".
Recommend
Either use g_hash_table_lookup_extended() to test for key presence
or change enum BLUET00TH_STATUS_DISCONNECTED to be != 0.
---
lib/bluetooth-enums.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/lib/bluetooth-enums.h b/lib/bluetooth-enums.h
index 7563c4c..450c38c 100644
--- a/lib/bluetooth-enums.h
+++ b/lib/bluetooth-enums.h
@@ -80,7 +80,8 @@ typedef enum {
} BluetoothColumn;
typedef enum {
- BLUETOOTH_STATUS_DISCONNECTED = 0,
+ BLUETOOTH_STATUS_INVALID = 0,
+ BLUETOOTH_STATUS_DISCONNECTED,
BLUETOOTH_STATUS_CONNECTED,
BLUETOOTH_STATUS_CONNECTING,
BLUETOOTH_STATUS_PLAYING
--
1.6.2.5

View File

@ -1,30 +0,0 @@
From 33524bf400bfbf3c5fc5bdf23dc086f0d7d0875b Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Fri, 11 Sep 2009 14:58:25 +0100
Subject: [PATCH] Fix pairing with devices that require PIN entry
If a device that has a fixed PIN was selected before a device that
doesn't have one (for example, select a printer or audio headset,
before selecting a phone), then the automatic_pincode would have
been TRUE.
We need to reset the automatic_pincode every time we change devices.
---
wizard/main.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/wizard/main.c b/wizard/main.c
index ac28573..5bf719d 100644
--- a/wizard/main.c
+++ b/wizard/main.c
@@ -775,6 +775,7 @@ select_device_changed (BluetoothChooser *selector,
target_type = type;
target_ssp = !legacypairing;
+ automatic_pincode = FALSE;
g_free (pincode);
pincode = NULL;
--
1.6.2.5

View File

@ -1,12 +1,12 @@
Name: gnome-bluetooth
Version: 2.27.90
Release: 3%{?dist}
Version: 2.28.0
Release: 1%{?dist}
Summary: Bluetooth graphical utilities
Group: Applications/Communications
License: GPLv2+
URL: http://live.gnome.org/GnomeBluetooth
Source0: http://download.gnome.org/sources/gnome-bluetooth/2.27/gnome-bluetooth-%{version}.tar.bz2
Source0: http://download.gnome.org/sources/gnome-bluetooth/2.28/gnome-bluetooth-%{version}.tar.bz2
Source1: 61-gnome-bluetooth-rfkill.rules
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
@ -34,10 +34,6 @@ Requires: pulseaudio-module-bluetooth
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
# http://bugzilla.gnome.org/show_bug.cgi?id=594055
Patch0: 0001-Bug-594055-applet-fails-to-connect-to-any-disconn.patch
Patch1: 0001-Fix-pairing-with-devices-that-require-PIN-entry.patch
%description
The gnome-bluetooth package contains graphical utilities to setup,
monitor and use Bluetooth devices.
@ -67,8 +63,6 @@ for writing applications that require a Bluetooth device selection widget.
%prep
%setup -q -n gnome-bluetooth-%{version}
%patch0 -p1 -b .connect
%build
%configure --disable-desktop-update --disable-icon-update
make %{?_smp_mflags}
@ -200,6 +194,9 @@ fi
%{_datadir}/gtk-doc/html/gnome-bluetooth/
%changelog
* Sat Sep 19 2009 Bastien Nocera <bnocera@redhat.com> 2.28.0-1
- Update to 2.28.0
* Fri Sep 11 2009 Bastien Nocera <bnocera@redhat.com> 2.27.90-3
- Fix possible pairing failure

View File

@ -1 +1 @@
c58e676d6e95384ba27bde814a5a84bb gnome-bluetooth-2.27.90.tar.bz2
0d10dbdb53d302aa3e34e391ef6b142b gnome-bluetooth-2.28.0.tar.bz2