commit | ee0fe684746faa36f385d740ff939d44ba3135c8 | [log] [tgz] |
---|---|---|
author | Mikhail Naganov <mnaganov@google.com> | Tue Apr 16 16:23:59 2024 +0000 |
committer | Android Build Cherrypicker Worker <android-build-cherrypicker-worker@google.com> | Tue Apr 16 16:23:59 2024 +0000 |
tree | a963bc305e4294e812a71a655fb613c38adf4739 | |
parent | 82ad275673a3d3c9c421fbc2eafe1bc842c2c722 [diff] [blame] |
libaudiohal@aidl: Fix 'localReply' scope in 'sendCommand' Make sure that 'localReply' is available all the time it is being accessed. Bug: 333116473 Bug: 335014456 Test: m (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:f84ae5370242ec407ea143ca98eb1ffd78cf1f15) Merged-In: I70a8fc7fb710a7a288509af3f8a57d0695c53b1a Change-Id: I70a8fc7fb710a7a288509af3f8a57d0695c53b1a
diff --git a/media/libaudiohal/impl/StreamHalAidl.cpp b/media/libaudiohal/impl/StreamHalAidl.cpp index 750edd5..0af164f 100644 --- a/media/libaudiohal/impl/StreamHalAidl.cpp +++ b/media/libaudiohal/impl/StreamHalAidl.cpp
@@ -506,13 +506,13 @@ "%s %s: must be invoked from the worker thread (%d)", __func__, command.toString().c_str(), workerTid); } + StreamDescriptor::Reply localReply{}; { std::lock_guard l(mCommandReplyLock); if (!mContext.getCommandMQ()->writeBlocking(&command, 1)) { ALOGE("%s: failed to write command %s to MQ", __func__, command.toString().c_str()); return NOT_ENOUGH_DATA; } - StreamDescriptor::Reply localReply{}; if (reply == nullptr) { reply = &localReply; }