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

Commit d23ab3ae authored by Dongwon Kang's avatar Dongwon Kang
Browse files

Remove std:vector from MediaExtractor::setMediaCas()

The layout and implementation of std::vector may be different depending
on the compile environment. Now MediaExtractor uses plain c pointer to
pass the token while framework side, IMediaExtractor, keeps using
std:vector.

Test: build
Bug: 67908556
Change-Id: I9614426e1d3318ee6ead5f8f78d5d0120d8c605d
parent 24aabf91
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -165,9 +165,9 @@ bool MPEG2TSExtractor::isScrambledFormat(const sp<MetaData> &format) {
                    || !strcasecmp(MEDIA_MIMETYPE_AUDIO_SCRAMBLED, mime));
}

status_t MPEG2TSExtractor::setMediaCas(const HInterfaceToken &casToken) {
status_t MPEG2TSExtractor::setMediaCas(const uint8_t* casToken, size_t size) {
    HalToken halToken;
    halToken.setToExternal((uint8_t*)casToken.data(), casToken.size());
    halToken.setToExternal((uint8_t*)casToken, size);
    sp<ICas> cas = ICas::castFrom(retrieveHalInterface(halToken));
    ALOGD("setMediaCas: %p", cas.get());

+1 −1
Original line number Diff line number Diff line
@@ -45,7 +45,7 @@ struct MPEG2TSExtractor : public MediaExtractor {

    virtual sp<MetaData> getMetaData();

    virtual status_t setMediaCas(const HInterfaceToken &casToken) override;
    virtual status_t setMediaCas(const uint8_t* /*casToken*/, size_t /*size*/) override;

    virtual uint32_t flags() const;
    virtual const char * name() { return "MPEG2TSExtractor"; }
+1 −2
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ class MetaData;
class String8;
struct AMessage;
struct MediaSourceBase;
typedef std::vector<uint8_t> HInterfaceToken;


class ExtractorAllocTracker {
@@ -81,7 +80,7 @@ public:
    }
    virtual void setUID(uid_t /*uid*/) {
    }
    virtual status_t setMediaCas(const HInterfaceToken &/*casToken*/) {
    virtual status_t setMediaCas(const uint8_t* /*casToken*/, size_t /*size*/) {
        return INVALID_OPERATION;
    }

+1 −1
Original line number Diff line number Diff line
@@ -127,7 +127,7 @@ void RemoteMediaExtractor::setUID(uid_t uid) {
}

status_t RemoteMediaExtractor::setMediaCas(const HInterfaceToken &casToken) {
    return mExtractor->setMediaCas(casToken);
    return mExtractor->setMediaCas((uint8_t*)casToken.data(), casToken.size());
}

const char * RemoteMediaExtractor::name() {