Remove some private data members not needed to be carried.

This commit is contained in:
Tsuda Kageyu 2015-11-30 12:53:52 +09:00
parent b541ec8b68
commit 5e37f0101d
2 changed files with 9 additions and 20 deletions

View File

@ -46,15 +46,7 @@ using namespace APE;
class APE::Tag::TagPrivate
{
public:
TagPrivate() :
file(0),
footerLocation(-1) {}
TagLib::File *file;
long footerLocation;
Footer footer;
ItemListMap itemListMap;
};
@ -72,10 +64,7 @@ APE::Tag::Tag(TagLib::File *file, long footerLocation) :
TagLib::Tag(),
d(new TagPrivate())
{
d->file = file;
d->footerLocation = footerLocation;
read();
read(file, footerLocation);
}
APE::Tag::~Tag()
@ -330,19 +319,19 @@ bool APE::Tag::isEmpty() const
// protected methods
////////////////////////////////////////////////////////////////////////////////
void APE::Tag::read()
void APE::Tag::read(TagLib::File *file, long footerLocation)
{
if(d->file && d->file->isValid()) {
if(file && file->isValid()) {
d->file->seek(d->footerLocation);
d->footer.setData(d->file->readBlock(Footer::size()));
file->seek(footerLocation);
d->footer.setData(file->readBlock(Footer::size()));
if(d->footer.tagSize() <= Footer::size() ||
d->footer.tagSize() > uint(d->file->length()))
d->footer.tagSize() > uint(file->length()))
return;
d->file->seek(d->footerLocation + Footer::size() - d->footer.tagSize());
parse(d->file->readBlock(d->footer.tagSize() - Footer::size()));
file->seek(footerLocation + Footer::size() - d->footer.tagSize());
parse(file->readBlock(d->footer.tagSize() - Footer::size()));
}
}

View File

@ -188,7 +188,7 @@ namespace TagLib {
/*!
* Reads from the file specified in the constructor.
*/
void read();
void read(TagLib::File *file, long footerLocation);
/*!
* Parses the body of the tag in \a data.