tag_ape: moved code to tag_ape_import_item()
Improve code readability.
This commit is contained in:
parent
7b92750622
commit
5e2f98fdad
|
@ -44,6 +44,26 @@ static const int tagItems[7] = {
|
||||||
TAG_ITEM_DATE,
|
TAG_ITEM_DATE,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static struct tag *
|
||||||
|
tag_ape_import_item(struct tag *tag, unsigned long flags,
|
||||||
|
const char *key, const char *value, size_t value_length)
|
||||||
|
{
|
||||||
|
/* we only care about utf-8 text tags */
|
||||||
|
if ((flags & (0x3 << 1)) != 0)
|
||||||
|
return tag;
|
||||||
|
|
||||||
|
for (unsigned i = 0; i < 7; i++) {
|
||||||
|
if (g_ascii_strcasecmp(key, apeItems[i]) == 0) {
|
||||||
|
if (tag == NULL)
|
||||||
|
tag = tag_new();
|
||||||
|
tag_add_item_n(tag, tagItems[i],
|
||||||
|
value, value_length);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return tag;
|
||||||
|
}
|
||||||
|
|
||||||
struct tag *
|
struct tag *
|
||||||
tag_ape_load(const char *file)
|
tag_ape_load(const char *file)
|
||||||
{
|
{
|
||||||
|
@ -55,7 +75,6 @@ tag_ape_load(const char *file)
|
||||||
size_t tagLen;
|
size_t tagLen;
|
||||||
size_t size;
|
size_t size;
|
||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
int i;
|
|
||||||
char *key;
|
char *key;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
|
@ -123,17 +142,8 @@ tag_ape_load(const char *file)
|
||||||
if (tagLen < size)
|
if (tagLen < size)
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
/* we only care about utf-8 text tags */
|
ret = tag_ape_import_item(ret, flags, key, p, size);
|
||||||
if (!(flags & (0x3 << 1))) {
|
|
||||||
for (i = 0; i < 7; i++) {
|
|
||||||
if (g_ascii_strcasecmp(key, apeItems[i]) == 0) {
|
|
||||||
if (!ret)
|
|
||||||
ret = tag_new();
|
|
||||||
tag_add_item_n(ret, tagItems[i],
|
|
||||||
p, size);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
p += size;
|
p += size;
|
||||||
tagLen -= size;
|
tagLen -= size;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue