[pulseaudio-discuss] [PATCH v4 15/41] bluetooth: Parse BlueZ 5 adapter properties
João Paulo Rechi Vita
jprvita at gmail.com
Sat Sep 21 13:56:38 PDT 2013
On Sat, Sep 21, 2013 at 7:51 AM, Tanu Kaskinen
<tanu.kaskinen at linux.intel.com> wrote:
> On Wed, 2013-09-18 at 16:17 -0500, jprvita at gmail.com wrote:
>> +static int parse_adapter_properties(pa_bluetooth_adapter *a, DBusMessageIter *i, bool is_property_change) {
>> + DBusMessageIter element_i;
>> +
>> + pa_assert(a);
>> +
>> + dbus_message_iter_recurse(i, &element_i);
>> +
>> + while (dbus_message_iter_get_arg_type(&element_i) == DBUS_TYPE_DICT_ENTRY) {
>> + DBusMessageIter dict_i, variant_i;
>> + const char *key;
>> +
>> + dbus_message_iter_recurse(&element_i, &dict_i);
>> +
>> + key = check_variant_property(&dict_i);
>> + if (key == NULL) {
>> + pa_log_error("Received invalid property for adapter %s", a->path);
>> + return -1;
>> + }
>> +
>> + dbus_message_iter_recurse(&dict_i, &variant_i);
>> +
>> + if (dbus_message_iter_get_arg_type(&variant_i) == DBUS_TYPE_STRING && pa_streq(key, "Address")) {
>> + char *value;
>> +
>> + dbus_message_iter_get_basic(&variant_i, &value);
>> + a->address = pa_xstrdup(value);
>> + }
>
> Can the Address property change? If not, it should be checked if
> is_property_change is true, and if it is, then complain loudly. If it
> can change, then the old address should be freed before assigning the
> new address.
The address property should not change, I'm adding those checks.
--
João Paulo Rechi Vita
http://about.me/jprvita
More information about the pulseaudio-discuss
mailing list