From 625cc84ec0e281e5e68df0486c226ecf521dccde Mon Sep 17 00:00:00 2001 From: Andrey Kleshchev Date: Sun, 20 Mar 2022 19:29:41 +0200 Subject: SL-16865 llStopSound() does not stop sound if it is out of cutoff radius --- indra/newview/llviewerobject.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'indra/newview/llviewerobject.cpp') diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index 31e80eb865..4c476e89ce 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -1264,6 +1264,7 @@ U32 LLViewerObject::processUpdateMessage(LLMessageSystem *mesgsys, mesgsys->getBinaryDataFast(_PREHASH_ObjectData, _PREHASH_ObjectData, data, length, block_num, MAX_OBJECT_BINARY_DATA_SIZE); mTotalCRC = crc; + // Might need to update mSourceMuted here to properly pick up new radius mSoundCutOffRadius = cutoff; // Owner ID used for sound muting or particle system muting @@ -5873,7 +5874,7 @@ void LLViewerObject::setAttachedSound(const LLUUID &audio_uuid, const LLUUID& ow else if (flags & LL_SOUND_FLAG_STOP) { // Just shut off the sound - mAudioSourcep->play(LLUUID::null); + mAudioSourcep->stop(); } return; } @@ -5912,7 +5913,7 @@ void LLViewerObject::setAttachedSound(const LLUUID &audio_uuid, const LLUUID& ow mAudioSourcep->setQueueSounds(queue); if(!queue) // stop any current sound first to avoid "farts of doom" (SL-1541) -MG { - mAudioSourcep->play(LLUUID::null); + mAudioSourcep->stop(); } // Play this sound if region maturity permits -- cgit v1.2.3