NowPlaying.dll: Applied a few fixes to TagLib

This commit is contained in:
Birunthan Mohanathas 2012-04-20 20:13:40 +03:00
parent 04e6446531
commit 62f80d9556
2 changed files with 7 additions and 5 deletions

View File

@ -51,7 +51,8 @@ public:
static const StringHandler *stringHandler; static const StringHandler *stringHandler;
}; };
const ID3v1::StringHandler *ID3v1::Tag::TagPrivate::stringHandler = new StringHandler; static const StringHandler defaultStringHandler;
const ID3v1::StringHandler *ID3v1::Tag::TagPrivate::stringHandler = &defaultStringHandler;
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// StringHandler implementation // StringHandler implementation
@ -189,7 +190,9 @@ void ID3v1::Tag::setTrack(uint i)
void ID3v1::Tag::setStringHandler(const StringHandler *handler) void ID3v1::Tag::setStringHandler(const StringHandler *handler)
{ {
if(TagPrivate::stringHandler != &defaultStringHandler)
delete TagPrivate::stringHandler; delete TagPrivate::stringHandler;
TagPrivate::stringHandler = handler; TagPrivate::stringHandler = handler;
} }

View File

@ -73,9 +73,8 @@ FrameFactory *FrameFactory::factory = 0;
FrameFactory *FrameFactory::instance() FrameFactory *FrameFactory::instance()
{ {
if(!factory) static FrameFactory factory;
factory = new FrameFactory; return &factory;
return factory;
} }
Frame *FrameFactory::createFrame(const ByteVector &data, bool synchSafeInts) const Frame *FrameFactory::createFrame(const ByteVector &data, bool synchSafeInts) const