moved fallback APE/ID3 tag loader to song.c
Some plugins used the APE or ID3 tag loader as a fallback when their own methods of loading tags did not work. Move this code out of all decoder plugins, into song_file_update().
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
#include "../decoder_api.h"
|
||||
#include "../conf.h"
|
||||
#include "config.h"
|
||||
#include "tag_id3.h"
|
||||
|
||||
#include <assert.h>
|
||||
#include <unistd.h>
|
||||
@@ -1190,22 +1191,19 @@ mp3_decode(struct decoder *decoder, struct input_stream *input_stream)
|
||||
|
||||
static struct tag *mp3_tag_dup(const char *file)
|
||||
{
|
||||
struct tag *ret = NULL;
|
||||
struct tag *tag;
|
||||
int total_time;
|
||||
|
||||
ret = tag_id3_load(file);
|
||||
|
||||
total_time = mp3_total_file_time(file);
|
||||
if (total_time >= 0) {
|
||||
if (!ret)
|
||||
ret = tag_new();
|
||||
ret->time = total_time;
|
||||
} else {
|
||||
if (total_time < 0) {
|
||||
g_debug("mp3_tag_dup: Failed to get total song time from: %s\n",
|
||||
file);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return ret;
|
||||
tag = tag_new();
|
||||
tag->time = total_time;
|
||||
return tag;
|
||||
}
|
||||
|
||||
static const char *const mp3_suffixes[] = { "mp3", "mp2", NULL };
|
||||
|
||||
Reference in New Issue
Block a user