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

Commit 78c5e450 authored by Ryan Prichard's avatar Ryan Prichard
Browse files

Replace basic_string<uint8_t> with std::vector

In newer versions of libc++, std::char_traits<T> is no longer defined
for non-character types, and a result, std::basic_string<uint8_t> is
also no longer defined. See
https://discourse.llvm.org/t/deprecating-std-string-t-for-non-character-t/66779.

Bug: 175635923
Test: make checkbuild
Change-Id: I1893d1b1419f528115739275ca0f1d80ddb22470
parent 2675cc0f
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -398,8 +398,7 @@ class OutputStreamEventCallbackAidl :
                      *static_cast<StreamCallbackBase*>(this)),
              StreamCallbackBaseHelper<StreamOutHalInterfaceLatencyModeCallback>(
                      *static_cast<StreamCallbackBase*>(this)) {}
    ndk::ScopedAStatus onCodecFormatChanged(const std::vector<uint8_t>& in_audioMetadata) override {
        std::basic_string<uint8_t> halMetadata(in_audioMetadata.begin(), in_audioMetadata.end());
    ndk::ScopedAStatus onCodecFormatChanged(const std::vector<uint8_t>& halMetadata) override {
        return StreamCallbackBaseHelper<StreamOutHalInterfaceEventCallback>::runCb(
                [&halMetadata](auto cb) { cb->onCodecFormatChanged(halMetadata); });
    }
+2 −2
Original line number Diff line number Diff line
@@ -840,7 +840,7 @@ struct StreamOutEventCallback : public IStreamOutEventCallback {
            const android::hardware::hidl_vec<uint8_t>& audioMetadata)  override {
        sp<StreamOutHalHidl> stream = mStream.promote();
        if (stream != nullptr) {
            std::basic_string<uint8_t> metadataBs(audioMetadata.begin(), audioMetadata.end());
            std::vector<uint8_t> metadataBs(audioMetadata.begin(), audioMetadata.end());
            stream->onCodecFormatChanged(metadataBs);
        }
        return Void();
@@ -967,7 +967,7 @@ void StreamOutHalHidl::onError() {
    callback->onError();
}

void StreamOutHalHidl::onCodecFormatChanged(const std::basic_string<uint8_t>& metadataBs) {
void StreamOutHalHidl::onCodecFormatChanged(const std::vector<uint8_t>& metadataBs) {
    sp<StreamOutHalInterfaceEventCallback> callback = mEventCallback.load().promote();
    if (callback == nullptr) return;
    ALOGV("asyncCodecFormatCallback %s", __func__);
+1 −1
Original line number Diff line number Diff line
@@ -194,7 +194,7 @@ class StreamOutHalHidl : public StreamOutHalInterface, public StreamHalHidl {
    status_t setEventCallback(const sp<StreamOutHalInterfaceEventCallback>& callback) override;

    // Methods used by StreamCodecFormatCallback (HIDL).
    void onCodecFormatChanged(const std::basic_string<uint8_t>& metadataBs);
    void onCodecFormatChanged(const std::vector<uint8_t>& metadataBs);

    status_t setLatencyMode(audio_latency_mode_t mode) override;
    status_t getRecommendedLatencyModes(std::vector<audio_latency_mode_t> *modes) override;
+1 −1
Original line number Diff line number Diff line
@@ -116,7 +116,7 @@ class StreamOutHalInterfaceCallback : public virtual RefBase {

class StreamOutHalInterfaceEventCallback : public virtual RefBase {
public:
    virtual void onCodecFormatChanged(const std::basic_string<uint8_t>& metadataBs) = 0;
    virtual void onCodecFormatChanged(const std::vector<uint8_t>& metadataBs) = 0;

protected:
    StreamOutHalInterfaceEventCallback() = default;
+1 −1
Original line number Diff line number Diff line
@@ -3046,7 +3046,7 @@ void PlaybackThread::onError()
}

void PlaybackThread::onCodecFormatChanged(
        const std::basic_string<uint8_t>& metadataBs)
        const std::vector<uint8_t>& metadataBs)
{
    const auto weakPointerThis = wp<PlaybackThread>::fromExisting(this);
    std::thread([this, metadataBs, weakPointerThis]() {
Loading