diff -Nur taglib-1.5/taglib/ape/apeitem.cpp taglib/taglib/ape/apeitem.cpp --- taglib-1.5/taglib/ape/apeitem.cpp 2008-02-12 17:30:25.000000000 +0100 +++ taglib/taglib/ape/apeitem.cpp 2009-01-11 00:15:33.000000000 +0100 @@ -160,14 +160,14 @@ bool APE::Item::isEmpty() const { switch(d->type) { - case 0: - case 1: + case Text: + case Binary: if(d->text.isEmpty()) return true; if(d->text.size() == 1 && d->text.front().isEmpty()) return true; return false; - case 2: + case Locator: return d->value.isEmpty(); default: return false; @@ -206,8 +206,9 @@ if(isEmpty()) return data; - if(d->type != Item::Binary) { + if(d->type == Text) { StringList::ConstIterator it = d->text.begin(); + value.append(it->data(String::UTF8)); it++; for(; it != d->text.end(); ++it) {