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

Commit 006b7eeb authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove system library classes from DataSourceBase"

parents 46ea3359 b486b52b
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -542,12 +542,11 @@ static unsigned U24_AT(const uint8_t *ptr) {
    return ptr[0] << 16 | ptr[1] << 8 | ptr[2];
}

static AString uriDebugString(const AString &uri) {
static AString uriDebugString(const char *uri) {
    // find scheme
    AString scheme;
    const char *chars = uri.c_str();
    for (size_t i = 0; i < uri.size(); i++) {
        const char c = chars[i];
    for (size_t i = 0; i < strlen(uri); i++) {
        const char c = uri[i];
        if (!isascii(c)) {
            break;
        } else if (isalpha(c)) {
@@ -899,8 +898,12 @@ MatroskaExtractor::MatroskaExtractor(DataSourceBase *source)
    }

    if (ret < 0) {
        char uri[1024];
        if(!mDataSource->getUri(uri, sizeof(uri))) {
            uri[0] = '\0';
        }
        ALOGW("Corrupt %s source: %s", mIsWebm ? "webm" : "matroska",
                uriDebugString(mDataSource->getUri()).c_str());
                uriDebugString(uri).c_str());
        delete mSegment;
        mSegment = NULL;
        return;
+2 −1
Original line number Diff line number Diff line
@@ -24,9 +24,10 @@
#include <media/MediaExtractor.h>
#include <media/stagefright/MetaDataBase.h>
#include <media/stagefright/foundation/AString.h>
#include <utils/KeyedVector.h>
#include <utils/List.h>
#include <utils/Vector.h>
#include <utils/String8.h>
#include <utils/Vector.h>

namespace android {
struct AMessage;
+2 −2
Original line number Diff line number Diff line
@@ -123,8 +123,8 @@ status_t DataSourceBase::getSize(off64_t *size) {
    return ERROR_UNSUPPORTED;
}

String8 DataSourceBase::getMIMEType() const {
    return String8("application/octet-stream");
bool DataSourceBase::getUri(char *uriString __unused, size_t bufferSize __unused) {
    return false;
}

}  // namespace android
+28 −0
Original line number Diff line number Diff line
@@ -41,6 +41,34 @@ public:
        return nullptr;
    }

    virtual String8 toString() {
        return String8("<unspecified>");
    }

    virtual status_t reconnectAtOffset(off64_t /*offset*/) {
        return ERROR_UNSUPPORTED;
    }

    ////////////////////////////////////////////////////////////////////////////

    // for DRM
    virtual sp<DecryptHandle> DrmInitialization(const char * /*mime*/ = NULL) {
        return NULL;
    }

    virtual String8 getUri() {
        return String8();
    }

    virtual bool getUri(char *uriString, size_t bufferSize) final {
        int ret = snprintf(uriString, bufferSize, "%s", getUri().c_str());
        return ret >= 0 && static_cast<size_t>(ret) < bufferSize;
    }

    virtual String8 getMIMEType() const {
        return String8("application/octet-stream");
    }

protected:
    virtual ~DataSource() {}

+2 −24
Original line number Diff line number Diff line
@@ -19,10 +19,7 @@
#define DATA_SOURCE_BASE_H_

#include <sys/types.h>
#include <media/stagefright/MediaErrors.h>
#include <utils/Errors.h>
#include <utils/threads.h>
#include <drm/DrmManagerClient.h>

namespace android {

@@ -61,31 +58,12 @@ public:
    // May return ERROR_UNSUPPORTED.
    virtual status_t getSize(off64_t *size);

    virtual bool getUri(char *uriString, size_t bufferSize);

    virtual uint32_t flags() {
        return 0;
    }

    virtual String8 toString() {
        return String8("<unspecified>");
    }

    virtual status_t reconnectAtOffset(off64_t /*offset*/) {
        return ERROR_UNSUPPORTED;
    }

    ////////////////////////////////////////////////////////////////////////////

    // for DRM
    virtual sp<DecryptHandle> DrmInitialization(const char * /*mime*/ = NULL) {
        return NULL;
    }

    virtual String8 getUri() {
        return String8();
    }

    virtual String8 getMIMEType() const;

    virtual void close() {};

protected: