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

Commit c1c1106c authored by Adam Seaton's avatar Adam Seaton Committed by android-build-team Robot
Browse files

Revert "M3UParser: make url on demand"

This reverts commit 26e236bd.

Reason for revert: Removing from Pi Release due to regression tracked in b/111381540

Change-Id: I561669924f1ff1d77836b8d2c0563a0bd288ae26
(cherry picked from commit 3099c28ec4b9efd3e3402d28f36773a20b2b56d4)
parent f5eb3b85
Loading
Loading
Loading
Loading
+10 −21
Original line number Original line Diff line number Diff line
@@ -57,7 +57,7 @@ struct M3UParser::MediaGroup : public RefBase {
            const char *language,
            const char *language,
            uint32_t flags);
            uint32_t flags);


    bool getActiveURI(AString *uri, const char *baseURL) const;
    bool getActiveURI(AString *uri) const;


    void pickRandomMediaItems();
    void pickRandomMediaItems();
    status_t selectTrack(size_t index, bool select);
    status_t selectTrack(size_t index, bool select);
@@ -76,7 +76,6 @@ private:
        AString mURI;
        AString mURI;
        AString mLanguage;
        AString mLanguage;
        uint32_t mFlags;
        uint32_t mFlags;
        AString makeURL(const char *baseURL) const;
    };
    };


    Type mType;
    Type mType;
@@ -229,12 +228,12 @@ sp<AMessage> M3UParser::MediaGroup::getTrackInfo(size_t index) const {
    return format;
    return format;
}
}


bool M3UParser::MediaGroup::getActiveURI(AString *uri, const char *baseURL) const {
bool M3UParser::MediaGroup::getActiveURI(AString *uri) const {
    for (size_t i = 0; i < mMediaItems.size(); ++i) {
    for (size_t i = 0; i < mMediaItems.size(); ++i) {
        if (mSelectedIndex >= 0 && i == (size_t)mSelectedIndex) {
        if (mSelectedIndex >= 0 && i == (size_t)mSelectedIndex) {
            const Media &item = mMediaItems.itemAt(i);
            const Media &item = mMediaItems.itemAt(i);


            *uri = item.makeURL(baseURL);
            *uri = item.mURI;
            return true;
            return true;
        }
        }
    }
    }
@@ -323,7 +322,7 @@ bool M3UParser::itemAt(size_t index, AString *uri, sp<AMessage> *meta) {
    }
    }


    if (uri) {
    if (uri) {
        *uri = mItems.itemAt(index).makeURL(mBaseURI.c_str());
        *uri = mItems.itemAt(index).mURI;
    }
    }


    if (meta) {
    if (meta) {
@@ -429,7 +428,7 @@ bool M3UParser::getTypeURI(size_t index, const char *key, AString *uri) const {
    AString groupID;
    AString groupID;
    if (!meta->findString(key, &groupID)) {
    if (!meta->findString(key, &groupID)) {
        if (uri != NULL) {
        if (uri != NULL) {
            *uri = mItems.itemAt(index).makeURL(mBaseURI.c_str());
            *uri = mItems.itemAt(index).mURI;
        }
        }


        AString codecs;
        AString codecs;
@@ -460,7 +459,7 @@ bool M3UParser::getTypeURI(size_t index, const char *key, AString *uri) const {
    // don't care about the active URI (or if there is an active one)
    // don't care about the active URI (or if there is an active one)
    if (uri != NULL) {
    if (uri != NULL) {
        sp<MediaGroup> group = mMediaGroups.valueFor(groupID);
        sp<MediaGroup> group = mMediaGroups.valueFor(groupID);
        if (!group->getActiveURI(uri, mBaseURI.c_str())) {
        if (!group->getActiveURI(uri)) {
            return false;
            return false;
        }
        }


@@ -549,18 +548,6 @@ static bool MakeURL(const char *baseURL, const char *url, AString *out) {
    return true;
    return true;
}
}


AString M3UParser::Item::makeURL(const char *baseURL) const {
    AString out;
    CHECK(MakeURL(baseURL, mURI.c_str(), &out));
    return out;
}

AString M3UParser::MediaGroup::Media::makeURL(const char *baseURL) const {
    AString out;
    CHECK(MakeURL(baseURL, mURI.c_str(), &out));
    return out;
}

status_t M3UParser::parse(const void *_data, size_t size) {
status_t M3UParser::parse(const void *_data, size_t size) {
    int32_t lineNo = 0;
    int32_t lineNo = 0;


@@ -691,7 +678,7 @@ status_t M3UParser::parse(const void *_data, size_t size) {
            mItems.push();
            mItems.push();
            Item *item = &mItems.editItemAt(mItems.size() - 1);
            Item *item = &mItems.editItemAt(mItems.size() - 1);


            item->mURI = line;
            CHECK(MakeURL(mBaseURI.c_str(), line.c_str(), &item->mURI));


            item->mMeta = itemMeta;
            item->mMeta = itemMeta;


@@ -1203,7 +1190,9 @@ status_t M3UParser::parseMedia(const AString &line) {


            AString tmp(val, 1, val.size() - 2);
            AString tmp(val, 1, val.size() - 2);


            groupURI = tmp;
            if (!MakeURL(mBaseURI.c_str(), tmp.c_str(), &groupURI)) {
                ALOGI("Failed to make absolute URI from '%s'.", tmp.c_str());
            }


            haveGroupURI = true;
            haveGroupURI = true;
        }
        }
+0 −1
Original line number Original line Diff line number Diff line
@@ -64,7 +64,6 @@ private:
    struct Item {
    struct Item {
        AString mURI;
        AString mURI;
        sp<AMessage> mMeta;
        sp<AMessage> mMeta;
        AString makeURL(const char *baseURL) const;
    };
    };


    status_t mInitCheck;
    status_t mInitCheck;