Diff between 8a335099bc1b211a672e4ea5c2bbb470e21021a0 and a1fb50fd5aa0a605c810543c8479016febf1cacc

Changed Files

File Additions Deletions Status
profiles/audio/media.c +11 -0 modified

Full Patch

diff --git a/profiles/audio/media.c b/profiles/audio/media.c
index 825f3cf..44828df 100644
--- a/profiles/audio/media.c
+++ b/profiles/audio/media.c
@@ -1610,6 +1610,10 @@ static int parse_properties(DBusMessageIter *props, const char **uuid,
 			if (var != DBUS_TYPE_UINT16)
 				return -EINVAL;
 			dbus_message_iter_get_basic(&value, &qos->ppd_max);
+		} else if (strcasecmp(key, "Locations") == 0) {
+			if (var != DBUS_TYPE_UINT32)
+				return -EINVAL;
+			dbus_message_iter_get_basic(&value, &qos->location);
 		}
 
 		dbus_message_iter_next(props);
@@ -2800,6 +2804,13 @@ static void app_register_endpoint(void *data, void *user_data)
 		dbus_message_iter_get_basic(&iter, &qos.ppd_min);
 	}
 
+	if (g_dbus_proxy_get_property(proxy, "Locations", &iter)) {
+		if (dbus_message_iter_get_arg_type(&iter) != DBUS_TYPE_UINT32)
+			goto fail;
+
+		dbus_message_iter_get_basic(&iter, &qos.location);
+	}
+
 	endpoint = media_endpoint_create(app->adapter, app->sender, path, uuid,
 						delay_reporting, codec,
 						vendor.cid, vendor.vid, &qos,