diff options
author | Andy Hung <hunga@google.com> | 2021-05-04 21:37:16 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-05-04 21:37:16 +0000 |
commit | 66606158221e92ba730259b62af5d95926fec50f (patch) | |
tree | b94280d19e4819a5b843cda415591270f093ed6c /audio/core/all-versions/default/StreamOut.cpp | |
parent | a8a4cb0028a719701b776760284f036734b9659d (diff) | |
parent | 1e1514be04bc5c6a2a5a0b22ff16182127651814 (diff) |
Merge "StreamOut: Fix STREAM_EVENT_CBK_TYPE_CODEC_FORMAT_CHANGED" am: 66ffc5b99a am: 1e1514be04
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1692490
Change-Id: I97c94630cd48b9a0354c9b76e593ea0205a633b4
Diffstat (limited to 'audio/core/all-versions/default/StreamOut.cpp')
-rw-r--r-- | audio/core/all-versions/default/StreamOut.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/audio/core/all-versions/default/StreamOut.cpp b/audio/core/all-versions/default/StreamOut.cpp index 0a7c64b4b9..c23922dbb6 100644 --- a/audio/core/all-versions/default/StreamOut.cpp +++ b/audio/core/all-versions/default/StreamOut.cpp @@ -28,6 +28,7 @@ #include <HidlUtils.h> #include <android/log.h> +#include <audio_utils/Metadata.h> #include <hardware/audio.h> #include <util/CoreUtils.h> #include <utils/Trace.h> @@ -742,7 +743,11 @@ int StreamOut::asyncEventCallback(stream_event_callback_type_t event, void* para switch (event) { case STREAM_EVENT_CBK_TYPE_CODEC_FORMAT_CHANGED: { hidl_vec<uint8_t> audioMetadata; - audioMetadata.setToExternal((uint8_t*)param, strlen((char*)param)); + // void* param is the byte string buffer from byte_string_from_audio_metadata(). + // As the byte string buffer may have embedded zeroes, we cannot use strlen() + // but instead use audio_utils::metadata::dataByteStringLen(). + audioMetadata.setToExternal((uint8_t*)param, audio_utils::metadata::dataByteStringLen( + (const uint8_t*)param)); result = eventCallback->onCodecFormatChanged(audioMetadata); } break; default: |