fix nil interface bug
This commit is contained in:
@@ -170,7 +170,7 @@ type MediaItem interface {
|
||||
Copy() MediaItem
|
||||
}
|
||||
|
||||
func (t Track) Metadata() MediaItemMetadata {
|
||||
func (t *Track) Metadata() MediaItemMetadata {
|
||||
return MediaItemMetadata{
|
||||
Type: MediaItemTypeTrack,
|
||||
ID: t.ID,
|
||||
@@ -183,12 +183,13 @@ func (t Track) Metadata() MediaItemMetadata {
|
||||
Duration: t.Duration,
|
||||
}
|
||||
}
|
||||
|
||||
func (t *Track) Copy() MediaItem {
|
||||
new := *t
|
||||
return &new
|
||||
}
|
||||
|
||||
func (r RadioStation) Metadata() MediaItemMetadata {
|
||||
func (r *RadioStation) Metadata() MediaItemMetadata {
|
||||
return MediaItemMetadata{
|
||||
Type: MediaItemTypeRadioStation,
|
||||
ID: r.ID,
|
||||
|
||||
@@ -84,10 +84,13 @@ func FindMediaItemByID(id string, items []mediaprovider.MediaItem) mediaprovider
|
||||
}
|
||||
|
||||
func MediaItemIDOrEmptyStr(item mediaprovider.MediaItem) string {
|
||||
if item == nil {
|
||||
return ""
|
||||
if tr, ok := item.(*mediaprovider.Track); ok && tr != nil {
|
||||
return tr.ID
|
||||
}
|
||||
return item.Metadata().ID
|
||||
if rd, ok := item.(*mediaprovider.RadioStation); ok && rd != nil {
|
||||
return rd.ID
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func AlbumIDOrEmptyStr(track *mediaprovider.Track) string {
|
||||
|
||||
Reference in New Issue
Block a user