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

Commit 66a0a4e5 authored by James Wei's avatar James Wei Committed by Automerger Merge Worker
Browse files

Merge "MTP: Skip runtime thumbnail generation for Android Host" into sc-dev am: 28155d13

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/av/+/15019762

Change-Id: Iede7695ee80b6122083304142488c7a958c90b6a
parents 09205b92 28155d13
Loading
Loading
Loading
Loading
+26 −0
Original line number Original line Diff line number Diff line
@@ -608,6 +608,32 @@ MtpProperty* MtpDevice::getDevicePropDesc(MtpDeviceProperty code) {
    return NULL;
    return NULL;
}
}


bool MtpDevice::setDevicePropValueStr(MtpProperty* property) {
    if (property == nullptr)
        return false;

    std::lock_guard<std::mutex> lg(mMutex);

    if (property->getDataType() != MTP_TYPE_STR) {
        return false;
    }

    mRequest.reset();
    mRequest.setParameter(1, property->getPropertyCode());

    mData.reset();
    mData.putString(property->getCurrentValue().str);

   if (sendRequest(MTP_OPERATION_SET_DEVICE_PROP_VALUE) && sendData()) {
        MtpResponseCode ret = readResponse();
        if (ret != MTP_RESPONSE_OK) {
            ALOGW("%s: Response=0x%04X\n", __func__, ret);
            return false;
        }
    }
    return true;
}

MtpProperty* MtpDevice::getObjectPropDesc(MtpObjectProperty code, MtpObjectFormat format) {
MtpProperty* MtpDevice::getObjectPropDesc(MtpObjectProperty code, MtpObjectFormat format) {
    std::lock_guard<std::mutex> lg(mMutex);
    std::lock_guard<std::mutex> lg(mMutex);


+1 −0
Original line number Original line Diff line number Diff line
@@ -112,6 +112,7 @@ public:
    MtpObjectPropertyList*  getObjectPropsSupported(MtpObjectFormat format);
    MtpObjectPropertyList*  getObjectPropsSupported(MtpObjectFormat format);


    MtpProperty*            getDevicePropDesc(MtpDeviceProperty code);
    MtpProperty*            getDevicePropDesc(MtpDeviceProperty code);
    bool                    setDevicePropValueStr(MtpProperty* property);
    MtpProperty*            getObjectPropDesc(MtpObjectProperty code, MtpObjectFormat format);
    MtpProperty*            getObjectPropDesc(MtpObjectProperty code, MtpObjectFormat format);


    // Reads value of |property| for |handle|. Returns true on success.
    // Reads value of |property| for |handle|. Returns true on success.
+1 −1
Original line number Original line Diff line number Diff line
@@ -157,7 +157,7 @@ int MtpPacket::transfer(struct usb_request* request) {
                            request->endpoint,
                            request->endpoint,
                            request->buffer,
                            request->buffer,
                            request->buffer_length,
                            request->buffer_length,
                            1000);
                            5000);
    request->actual_length = result;
    request->actual_length = result;
    return result;
    return result;
}
}
+10 −0
Original line number Original line Diff line number Diff line
@@ -240,6 +240,16 @@ void MtpProperty::setCurrentValue(const uint16_t* string) {
        mCurrentValue.str = NULL;
        mCurrentValue.str = NULL;
}
}


void MtpProperty::setCurrentValue(const char* string) {
    free(mCurrentValue.str);
    if (string) {
        MtpStringBuffer buffer(string);
        mCurrentValue.str = strdup(buffer);
    }
    else
        mCurrentValue.str = NULL;
}

void MtpProperty::setCurrentValue(MtpDataPacket& packet) {
void MtpProperty::setCurrentValue(MtpDataPacket& packet) {
    free(mCurrentValue.str);
    free(mCurrentValue.str);
    mCurrentValue.str = NULL;
    mCurrentValue.str = NULL;
+1 −0
Original line number Original line Diff line number Diff line
@@ -91,6 +91,7 @@ public:


    void                setDefaultValue(const uint16_t* string);
    void                setDefaultValue(const uint16_t* string);
    void                setCurrentValue(const uint16_t* string);
    void                setCurrentValue(const uint16_t* string);
    void                setCurrentValue(const char* string);
    void                setCurrentValue(MtpDataPacket& packet);
    void                setCurrentValue(MtpDataPacket& packet);
    const MtpPropertyValue& getCurrentValue() { return mCurrentValue; }
    const MtpPropertyValue& getCurrentValue() { return mCurrentValue; }