Reduced the number of explicit retain/release method calls on love objects. Less chance of bugs!

This commit is contained in:
Alex Szpakowski
2014-08-07 14:53:17 -03:00
parent a0fff798aa
commit d59c76a55f
38 changed files with 194 additions and 247 deletions
-3
View File
@@ -37,7 +37,6 @@ Decoder::Decoder(Data *data, const std::string &ext, int bufferSize)
, buffer(0)
, eof(false)
{
data->retain();
buffer = new char[bufferSize];
}
@@ -45,8 +44,6 @@ Decoder::~Decoder()
{
if (buffer != 0)
delete [](char *) buffer;
if (data != 0)
data->release();
}
void *Decoder::getBuffer() const
+1 -1
View File
@@ -53,7 +53,7 @@ protected:
// The encoded data. This should be replaced with buffered file
// reads in the future.
Data *data;
Object::StrongRef<Data> data;
// File extension.
std::string ext;
+1 -1
View File
@@ -69,7 +69,7 @@ bool FLACDecoder::accepts(const std::string &ext)
love::sound::Decoder *FLACDecoder::clone()
{
return new FLACDecoder(data, ext, bufferSize, sampleRate);
return new FLACDecoder(data.get(), ext, bufferSize, sampleRate);
}
int FLACDecoder::decode()
+1 -1
View File
@@ -86,7 +86,7 @@ bool GmeDecoder::accepts(const std::string &ext)
love::sound::Decoder *GmeDecoder::clone()
{
return new GmeDecoder(data, ext, bufferSize);
return new GmeDecoder(data.get(), ext, bufferSize);
}
int GmeDecoder::decode()
+1 -1
View File
@@ -98,7 +98,7 @@ bool ModPlugDecoder::accepts(const std::string &ext)
love::sound::Decoder *ModPlugDecoder::clone()
{
return new ModPlugDecoder(data, ext, bufferSize);
return new ModPlugDecoder(data.get(), ext, bufferSize);
}
int ModPlugDecoder::decode()
+1 -1
View File
@@ -96,7 +96,7 @@ void Mpg123Decoder::quit()
love::sound::Decoder *Mpg123Decoder::clone()
{
return new Mpg123Decoder(data, ext, bufferSize);
return new Mpg123Decoder(data.get(), ext, bufferSize);
}
int Mpg123Decoder::decode()
+1 -1
View File
@@ -179,7 +179,7 @@ bool VorbisDecoder::accepts(const std::string &ext)
love::sound::Decoder *VorbisDecoder::clone()
{
return new VorbisDecoder(data, ext, bufferSize);
return new VorbisDecoder(data.get(), ext, bufferSize);
}
int VorbisDecoder::decode()
+1 -1
View File
@@ -117,7 +117,7 @@ bool WaveDecoder::accepts(const std::string &ext)
love::sound::Decoder *WaveDecoder::clone()
{
return new WaveDecoder(data, ext, bufferSize);
return new WaveDecoder(data.get(), ext, bufferSize);
}
int WaveDecoder::decode()