From 4d1846b745803aef9a9ddb6c567c066ae808edff Mon Sep 17 00:00:00 2001 From: Alex Szpakowski Date: Wed, 25 Dec 2013 02:19:59 -0400 Subject: [PATCH] Removed love.audio.newSource(source) (see issue #319) --- src/modules/audio/openal/Source.cpp | 42 ++++++++++++++--------------- src/modules/audio/openal/Source.h | 2 +- src/modules/audio/wrap_Audio.cpp | 9 ------- 3 files changed, 22 insertions(+), 31 deletions(-) diff --git a/src/modules/audio/openal/Source.cpp b/src/modules/audio/openal/Source.cpp index 04c510b73..d18810020 100644 --- a/src/modules/audio/openal/Source.cpp +++ b/src/modules/audio/openal/Source.cpp @@ -108,41 +108,41 @@ Source::Source(Pool *pool, love::sound::Decoder *decoder) setFloatv(direction, z); } -Source::Source(Source *s) - : love::audio::Source(s->type) - , pool(s->pool) +Source::Source(const Source &s) + : love::audio::Source(s.type) + , pool(s.pool) , valid(false) - , staticBuffer(s->staticBuffer) - , pitch(s->pitch) - , volume(s->volume) - , relative(s->relative) - , looping(s->looping) + , staticBuffer(s.staticBuffer) + , pitch(s.pitch) + , volume(s.volume) + , relative(s.relative) + , looping(s.looping) , paused(false) - , minVolume(s->minVolume) - , maxVolume(s->maxVolume) - , referenceDistance(s->referenceDistance) - , rolloffFactor(s->rolloffFactor) - , maxDistance(s->maxDistance) - , cone(s->cone) + , minVolume(s.minVolume) + , maxVolume(s.maxVolume) + , referenceDistance(s.referenceDistance) + , rolloffFactor(s.rolloffFactor) + , maxDistance(s.maxDistance) + , cone(s.cone) , offsetSamples(0) , offsetSeconds(0) - , channels(s->channels) + , channels(s.channels) , decoder(nullptr) , toLoop(0) { if (type == TYPE_STREAM) { - if (s->decoder) - decoder = s->decoder->clone(); + if (s.decoder) + decoder = s.decoder->clone(); alGenBuffers(MAX_BUFFERS, streamBuffers); } else staticBuffer->retain(); - setFloatv(position, s->position); - setFloatv(velocity, s->velocity); - setFloatv(direction, s->direction); + setFloatv(position, s.position); + setFloatv(velocity, s.velocity); + setFloatv(direction, s.direction); } Source::~Source() @@ -162,7 +162,7 @@ Source::~Source() love::audio::Source *Source::clone() { - return new Source(this); + return new Source(*this); } void Source::play() diff --git a/src/modules/audio/openal/Source.h b/src/modules/audio/openal/Source.h index 9027e2d2d..feaa118a3 100644 --- a/src/modules/audio/openal/Source.h +++ b/src/modules/audio/openal/Source.h @@ -72,7 +72,7 @@ public: Source(Pool *pool, love::sound::SoundData *soundData); Source(Pool *pool, love::sound::Decoder *decoder); - Source(Source *s); + Source(const Source &s); virtual ~Source(); virtual love::audio::Source *clone(); diff --git a/src/modules/audio/wrap_Audio.cpp b/src/modules/audio/wrap_Audio.cpp index c00102445..08dda50e8 100644 --- a/src/modules/audio/wrap_Audio.cpp +++ b/src/modules/audio/wrap_Audio.cpp @@ -41,15 +41,6 @@ int w_getSourceCount(lua_State *L) int w_newSource(lua_State *L) { - if (luax_istype(L, 1, AUDIO_SOURCE_T)) - { - Source *t = luax_checksource(L, 1); - Source *clone = 0; - EXCEPT_GUARD(clone = t->clone();) - luax_pushtype(L, "Source", AUDIO_SOURCE_T, clone); - return 1; - } - if (lua_isstring(L, 1) || luax_istype(L, 1, FILESYSTEM_FILE_T)) luax_convobj(L, 1, "filesystem", "newFileData");