Fix crash when passing null to AudioStreamPlayer::set_stream()
(cherry picked from commit 9e2d5120c1
)
This commit is contained in:
parent
661da8f9dd
commit
3680cfde86
@ -272,7 +272,10 @@ void AudioStreamPlayer2D::_notification(int p_what) {
|
|||||||
|
|
||||||
void AudioStreamPlayer2D::set_stream(Ref<AudioStream> p_stream) {
|
void AudioStreamPlayer2D::set_stream(Ref<AudioStream> p_stream) {
|
||||||
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
||||||
Ref<AudioStreamPlayback> pre_instanced_playback = p_stream->instance_playback();
|
Ref<AudioStreamPlayback> pre_instanced_playback;
|
||||||
|
if (p_stream.is_valid()) {
|
||||||
|
pre_instanced_playback = p_stream->instance_playback();
|
||||||
|
}
|
||||||
|
|
||||||
AudioServer::get_singleton()->lock();
|
AudioServer::get_singleton()->lock();
|
||||||
|
|
||||||
|
@ -623,7 +623,10 @@ void AudioStreamPlayer3D::_notification(int p_what) {
|
|||||||
|
|
||||||
void AudioStreamPlayer3D::set_stream(Ref<AudioStream> p_stream) {
|
void AudioStreamPlayer3D::set_stream(Ref<AudioStream> p_stream) {
|
||||||
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
||||||
Ref<AudioStreamPlayback> pre_instanced_playback = p_stream->instance_playback();
|
Ref<AudioStreamPlayback> pre_instanced_playback;
|
||||||
|
if (p_stream.is_valid()) {
|
||||||
|
pre_instanced_playback = p_stream->instance_playback();
|
||||||
|
}
|
||||||
|
|
||||||
AudioServer::get_singleton()->lock();
|
AudioServer::get_singleton()->lock();
|
||||||
|
|
||||||
|
@ -168,7 +168,10 @@ void AudioStreamPlayer::_notification(int p_what) {
|
|||||||
|
|
||||||
void AudioStreamPlayer::set_stream(Ref<AudioStream> p_stream) {
|
void AudioStreamPlayer::set_stream(Ref<AudioStream> p_stream) {
|
||||||
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
// Instancing audio streams can cause large memory allocations, do it prior to AudioServer::lock.
|
||||||
Ref<AudioStreamPlayback> pre_instanced_playback = p_stream->instance_playback();
|
Ref<AudioStreamPlayback> pre_instanced_playback;
|
||||||
|
if (p_stream.is_valid()) {
|
||||||
|
pre_instanced_playback = p_stream->instance_playback();
|
||||||
|
}
|
||||||
|
|
||||||
AudioServer::get_singleton()->lock();
|
AudioServer::get_singleton()->lock();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user