mirror of
https://github.com/taglib/taglib.git
synced 2025-05-27 21:20:26 -04:00
disable creation of unknown objects for wma files, because we've seen the cases when it could be as large as whole file, and we are greedy for the ram
CCMAIL:lalinsky@gmail.com git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1217775 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
parent
c56c0a3d0c
commit
a4f53d9b4a
@ -320,18 +320,23 @@ void ASF::File::HeaderExtensionObject::parse(ASF::File *file, uint /*size*/)
|
||||
while(dataPos < dataSize) {
|
||||
ByteVector guid = file->readBlock(16);
|
||||
long long size = file->readQWORD();
|
||||
BaseObject *obj;
|
||||
BaseObject *obj = 0;
|
||||
if(guid == metadataGuid) {
|
||||
obj = new MetadataObject();
|
||||
}
|
||||
else if(guid == metadataLibraryGuid) {
|
||||
obj = new MetadataLibraryObject();
|
||||
}
|
||||
//FIXME this UnknownObject can be as large as whole file, so i disable it for now --Nick Shaforostoff <shafff@ukr.net>
|
||||
/*
|
||||
else {
|
||||
obj = new UnknownObject(guid);
|
||||
}
|
||||
obj->parse(file, size);
|
||||
objects.append(obj);
|
||||
*/
|
||||
if(obj) {
|
||||
obj->parse(file, size);
|
||||
objects.append(obj);
|
||||
}
|
||||
dataPos += size;
|
||||
}
|
||||
}
|
||||
@ -360,6 +365,7 @@ ASF::File::File(FileName file, bool readProperties, Properties::ReadStyle proper
|
||||
ASF::File::~File()
|
||||
{
|
||||
for(unsigned int i = 0; i < d->objects.size(); i++) {
|
||||
d->objects[i]->data.clear();
|
||||
delete d->objects[i];
|
||||
}
|
||||
if(d->tag) {
|
||||
|
Loading…
Reference in New Issue
Block a user