Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f0f2fcbe authored by Xiao Huang's avatar Xiao Huang Committed by Gerrit Code Review
Browse files

Merge "Fix crash when callback thread late launched after stream close."

parents dc2f403f 9e2f6164
Loading
Loading
Loading
Loading
+8 −1
Original line number Original line Diff line number Diff line
@@ -2909,7 +2909,14 @@ void AudioFlinger::PlaybackThread::onError()
void AudioFlinger::PlaybackThread::onCodecFormatChanged(
void AudioFlinger::PlaybackThread::onCodecFormatChanged(
        const std::basic_string<uint8_t>& metadataBs)
        const std::basic_string<uint8_t>& metadataBs)
{
{
    std::thread([this, metadataBs]() {
    wp<AudioFlinger::PlaybackThread> weakPointerThis = this;
    std::thread([this, metadataBs, weakPointerThis]() {
            sp<AudioFlinger::PlaybackThread> playbackThread = weakPointerThis.promote();
            if (playbackThread == nullptr) {
                ALOGW("PlaybackThread was destroyed, skip codec format change event");
                return;
            }

            audio_utils::metadata::Data metadata =
            audio_utils::metadata::Data metadata =
                    audio_utils::metadata::dataFromByteString(metadataBs);
                    audio_utils::metadata::dataFromByteString(metadataBs);
            if (metadata.empty()) {
            if (metadata.empty()) {