~vcs-imports/gnome-bluetooth/+git/gnome-bluetooth:fedora-11

Last commit made on 2009-09-21
Get this branch:
git clone -b fedora-11 https://git.launchpad.net/~vcs-imports/gnome-bluetooth/+git/gnome-bluetooth

Branch merges

Branch information

Recent commits

8cc0b37... by Bastien Nocera

Bug 595845 - The applet shows wrong connection information

Fix status information in the applet not matching the service status.
https://bugzilla.gnome.org/show_bug.cgi?id=595845

d326df2... by Bastien Nocera

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.

016e079... by Stanislav Brabec

Fix crash on pairing request of known rfcomm device

Fixes crash after access attempt to the device configured
in rfcomm.conf, but not yet paired.

How to reproduce:

1. Configure an unknown RFCOMM device that requires authentication in
   rfcomm.conf (e. g. mobile phone).
2. run pppd on /dev/rfcomm1

Behavior:
- Pairing request on mobile phone
- Crash of bluetooth-applet on desktop

22484ca... by Bastien Nocera

Bug 594055 - applet fails to connect to any disconnected audio device

Hunted down by Peter Hurley <email address hidden>.

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.

bd1d8b9... by Bastien Nocera

Bug 593777 - duplicate object id in ui file

Rename duplicate label1 to label3 (which is unused)

eb1d160... by Bastien Nocera

Handle delete-event in test-plugins

So we can have it exit cleanly for use with valgrind.

fa90cb5... by Bastien Nocera

Add D-Bus object path to the debug output

abbe0a4... by Bastien Nocera

Bug 590874 – crash in Bluetooth: adding a bluetooth NAP phone

Don't unload plugins, fixes crashes on exit when the plugins
register GObject types.

e1570bf... by Bastien Nocera

Fix underline in "Set up new device"

Spotted by Matthias Clasen

b83c15e... by Bastien Nocera

Hide unwanted menu items when Bluetooth is disabled

We don't care about much of the menu items when there's no
adapters enabled.