fix crash on wma file parsing, add clarifications to API docs

CCMAIL: wheeler@kde.org



git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1217766 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
Nick Shaforostoff 2011-01-28 13:18:36 +00:00
parent 299e3f0ad6
commit c56c0a3d0c
3 changed files with 15 additions and 1 deletions

View File

@ -148,7 +148,11 @@ public:
void ASF::File::BaseObject::parse(ASF::File *file, unsigned int size)
{
data = file->readBlock(size - 24);
data.clear();
if (size > 24 && size <= file->length())
data = file->readBlock(size - 24);
else
data = ByteVector::null;
}
ByteVector ASF::File::BaseObject::render(ASF::File * /*file*/)

View File

@ -149,6 +149,9 @@ namespace TagLib {
* \warning This pointer will become invalid when this FileRef and all
* copies pass out of scope.
*
* \warning Do not cast it to any subclasses of \class Tag.
* Use tag returning methods of appropriate subclasses of \class File instead.
*
* \see File::tag()
*/
Tag *tag() const;

View File

@ -37,6 +37,9 @@
* \relates TagLib::String
*
* Converts a QString to a TagLib::String without a requirement to link to Qt.
*
* \note consider conversion via usual char-by-char for loop to avoid UTF16->UTF8->UTF16
* conversion happening in the background
*/
#define QStringToTString(s) TagLib::String(s.utf8().data(), TagLib::String::UTF8)
@ -44,6 +47,10 @@
* \relates TagLib::String
*
* Converts a TagLib::String to a QString without a requirement to link to Qt.
*
* \note consider conversion via usual char-by-char for loop to avoid UTF16->UTF8->UTF16
* conversion happening in the background
*
*/
#define TStringToQString(s) QString::fromUtf8(s.toCString(true))