diff --git a/profiles/audio/avrcp.c b/profiles/audio/avrcp.c
index cabe2ee..55887bc 100644
--- a/profiles/audio/avrcp.c
+++ b/profiles/audio/avrcp.c
GSList *sessions;
uint16_t id;
uint16_t uid_counter;
+ uint8_t *features;
struct avrcp_player_cb *cb;
void *user_data;
{
struct media_player *mp = player->user_data;
+ player->features = g_memdup(features, 16);
+
if (features[7] & 0x08)
media_player_set_browsable(mp, true);
player->destroy(player->user_data);
g_slist_free(player->sessions);
+ g_free(player->features);
g_free(player);
}
diff --git a/profiles/audio/player.c b/profiles/audio/player.c
index 7879193..07fd457 100644
--- a/profiles/audio/player.c
+++ b/profiles/audio/player.c
char *subtype; /* Player subtype */
bool browsable; /* Player browsing feature */
bool searchable; /* Player searching feature */
- uint8_t *features; /* Player features */
struct media_folder *folder; /* Player currenct folder */
char *path; /* Player object path */
GHashTable *settings; /* Player settings */
}
}
-void media_player_set_features(struct media_player *mp, uint64_t *features)
-{
- DBG("0x%016" PRIx64 "%016" PRIx64, features[0], features[1]);
-
- memcpy(features, mp->features, sizeof(mp->features));
-}
-
void media_player_set_callbacks(struct media_player *mp,
const struct media_player_callback *cbs,
void *user_data)
diff --git a/profiles/audio/player.h b/profiles/audio/player.h
index e9a7d1c..9109b1f 100644
--- a/profiles/audio/player.h
+++ b/profiles/audio/player.h
void *data, size_t len);
void media_player_set_type(struct media_player *mp, const char *type);
void media_player_set_subtype(struct media_player *mp, const char *subtype);
-void media_player_set_features(struct media_player *mp, uint64_t *features);
void media_player_set_name(struct media_player *mp, const char *name);
void media_player_set_browsable(struct media_player *mp, bool enabled);
void media_player_set_searchable(struct media_player *mp, bool enabled);