diff options
author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2022-04-18 20:43:49 +0300 |
---|---|---|
committer | Andrey Lihatskiy <alihatskiy@productengine.com> | 2022-04-18 20:43:49 +0300 |
commit | 026ad511eaeae74b0273276506ae4b3a29536a5c (patch) | |
tree | e316418eb30f456bd55d3a59a7bd7771d0f2af28 /indra/llaudio | |
parent | a629e845cfff17a9ab7e74dd3930e1fb63ab286b (diff) | |
parent | d031662435d97101411ae990ed85d6e001ab668a (diff) |
Merge branch 'master' into DRTVWR-544-maint
# Conflicts:
# indra/newview/app_settings/settings.xml
# indra/newview/llfloatersearch.cpp
# indra/newview/llgroupactions.cpp
# indra/newview/llvovolume.cpp
Diffstat (limited to 'indra/llaudio')
-rw-r--r-- | indra/llaudio/llaudioengine.cpp | 9 | ||||
-rw-r--r-- | indra/llaudio/llaudioengine.h | 8 |
2 files changed, 16 insertions, 1 deletions
diff --git a/indra/llaudio/llaudioengine.cpp b/indra/llaudio/llaudioengine.cpp index 5c0de19caa..2a00fe7c5a 100644 --- a/indra/llaudio/llaudioengine.cpp +++ b/indra/llaudio/llaudioengine.cpp @@ -1403,6 +1403,15 @@ bool LLAudioSource::setupChannel() return true; } +void LLAudioSource::stop() +{ + play(LLUUID::null); + if (mCurrentDatap) + { + // always reset data if something wants us to stop + mCurrentDatap = nullptr; + } +} bool LLAudioSource::play(const LLUUID &audio_uuid) { diff --git a/indra/llaudio/llaudioengine.h b/indra/llaudio/llaudioengine.h index c842c80ff7..e12fb970ca 100644 --- a/indra/llaudio/llaudioengine.h +++ b/indra/llaudio/llaudioengine.h @@ -304,7 +304,13 @@ public: LLAudioBuffer *getCurrentBuffer(); bool setupChannel(); - bool play(const LLUUID &audio_id); // Start the audio source playing + + // Stop the audio source, reset audio id even if muted + void stop(); + + // Start the audio source playing, + // takes mute into account to preserve previous id if nessesary + bool play(const LLUUID &audio_id); bool hasPendingPreloads() const; // Has preloads that haven't been done yet |