DespotifyUtils: pass const ds_track reference
This commit is contained in:
parent
bc23a6bb05
commit
89a78a5f3c
@ -85,28 +85,28 @@ void mpd_despotify_unregister_callback(void (*cb)(struct despotify_session *, in
|
|||||||
|
|
||||||
|
|
||||||
Tag *
|
Tag *
|
||||||
mpd_despotify_tag_from_track(struct ds_track *track)
|
mpd_despotify_tag_from_track(const ds_track &track)
|
||||||
{
|
{
|
||||||
char tracknum[20];
|
char tracknum[20];
|
||||||
char comment[80];
|
char comment[80];
|
||||||
char date[20];
|
char date[20];
|
||||||
|
|
||||||
if (!track->has_meta_data)
|
if (!track.has_meta_data)
|
||||||
return new Tag();
|
return new Tag();
|
||||||
|
|
||||||
TagBuilder tag;
|
TagBuilder tag;
|
||||||
snprintf(tracknum, sizeof(tracknum), "%d", track->tracknumber);
|
snprintf(tracknum, sizeof(tracknum), "%d", track.tracknumber);
|
||||||
snprintf(date, sizeof(date), "%d", track->year);
|
snprintf(date, sizeof(date), "%d", track.year);
|
||||||
snprintf(comment, sizeof(comment), "Bitrate %d Kbps, %sgeo restricted",
|
snprintf(comment, sizeof(comment), "Bitrate %d Kbps, %sgeo restricted",
|
||||||
track->file_bitrate / 1000,
|
track.file_bitrate / 1000,
|
||||||
track->geo_restricted ? "" : "not ");
|
track.geo_restricted ? "" : "not ");
|
||||||
tag.AddItem(TAG_TITLE, track->title);
|
tag.AddItem(TAG_TITLE, track.title);
|
||||||
tag.AddItem(TAG_ARTIST, track->artist->name);
|
tag.AddItem(TAG_ARTIST, track.artist->name);
|
||||||
tag.AddItem(TAG_TRACK, tracknum);
|
tag.AddItem(TAG_TRACK, tracknum);
|
||||||
tag.AddItem(TAG_ALBUM, track->album);
|
tag.AddItem(TAG_ALBUM, track.album);
|
||||||
tag.AddItem(TAG_DATE, date);
|
tag.AddItem(TAG_DATE, date);
|
||||||
tag.AddItem(TAG_COMMENT, comment);
|
tag.AddItem(TAG_COMMENT, comment);
|
||||||
tag.SetTime(track->length / 1000);
|
tag.SetTime(track.length / 1000);
|
||||||
|
|
||||||
return tag.CommitNew();
|
return tag.CommitNew();
|
||||||
}
|
}
|
||||||
|
@ -45,7 +45,7 @@ struct despotify_session *mpd_despotify_get_session(void);
|
|||||||
* @return a pointer to the filled in tags structure
|
* @return a pointer to the filled in tags structure
|
||||||
*/
|
*/
|
||||||
Tag *
|
Tag *
|
||||||
mpd_despotify_tag_from_track(struct ds_track *track);
|
mpd_despotify_tag_from_track(const ds_track &track);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Register a despotify callback.
|
* Register a despotify callback.
|
||||||
|
@ -52,7 +52,7 @@ class DespotifyInputStream {
|
|||||||
ds_track *_track)
|
ds_track *_track)
|
||||||
:base(input_plugin_despotify, uri, mutex, cond),
|
:base(input_plugin_despotify, uri, mutex, cond),
|
||||||
session(_session), track(_track),
|
session(_session), track(_track),
|
||||||
tag(mpd_despotify_tag_from_track(track)),
|
tag(mpd_despotify_tag_from_track(*track)),
|
||||||
len_available(0), eof(false) {
|
len_available(0), eof(false) {
|
||||||
|
|
||||||
memset(&pcm, 0, sizeof(pcm));
|
memset(&pcm, 0, sizeof(pcm));
|
||||||
|
@ -34,7 +34,7 @@ extern "C" {
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
static void
|
static void
|
||||||
add_song(std::forward_list<SongPointer> &songs, struct ds_track *track)
|
add_song(std::forward_list<SongPointer> &songs, ds_track &track)
|
||||||
{
|
{
|
||||||
const char *dsp_scheme = despotify_playlist_plugin.schemes[0];
|
const char *dsp_scheme = despotify_playlist_plugin.schemes[0];
|
||||||
Song *song;
|
Song *song;
|
||||||
@ -45,10 +45,10 @@ add_song(std::forward_list<SongPointer> &songs, struct ds_track *track)
|
|||||||
snprintf(uri, sizeof(uri), "%s://", dsp_scheme);
|
snprintf(uri, sizeof(uri), "%s://", dsp_scheme);
|
||||||
ds_uri = uri + strlen(dsp_scheme) + 3;
|
ds_uri = uri + strlen(dsp_scheme) + 3;
|
||||||
|
|
||||||
if (despotify_track_to_uri(track, ds_uri) != ds_uri) {
|
if (despotify_track_to_uri(&track, ds_uri) != ds_uri) {
|
||||||
/* Should never really fail, but let's be sure */
|
/* Should never really fail, but let's be sure */
|
||||||
FormatDebug(despotify_domain,
|
FormatDebug(despotify_domain,
|
||||||
"Can't add track %s", track->title);
|
"Can't add track %s", track.title);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,7 +67,7 @@ parse_track(struct despotify_session *session,
|
|||||||
if (track == nullptr)
|
if (track == nullptr)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
add_song(songs, track);
|
add_song(songs, *track);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,7 +82,7 @@ parse_playlist(struct despotify_session *session,
|
|||||||
|
|
||||||
for (ds_track *track = playlist->tracks; track != nullptr;
|
for (ds_track *track = playlist->tracks; track != nullptr;
|
||||||
track = track->next)
|
track = track->next)
|
||||||
add_song(songs, track);
|
add_song(songs, *track);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user