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

Commit 2b2bff5d authored by Mike Lockwood's avatar Mike Lockwood
Browse files

MTP: Remove retry loop from MTP server code



This should eliminate the spammy logging that my coworkers have noticed.

Change-Id: Ic0e611f5277dd13651490cbe5f7ded5f6e17db4f
Signed-off-by: default avatarMike Lockwood <lockwood@android.com>
parent 9e837861
Loading
Loading
Loading
Loading
+17 −38
Original line number Diff line number Diff line
@@ -55,7 +55,6 @@ private:
    MtpDatabase*    mDatabase;
    MtpServer*      mServer;
    String8         mStoragePath;
    bool            mDone;
    jobject         mJavaServer;

public:
@@ -63,18 +62,16 @@ public:
        : mDatabase(database),
            mServer(NULL),
            mStoragePath(storagePath),
            mDone(false),
            mJavaServer(javaServer)
    {
    }

    virtual bool threadLoop() {
        while (1) {
        int fd = open("/dev/mtp_usb", O_RDWR);
        printf("open returned %d\n", fd);
        if (fd < 0) {
            LOGE("could not open MTP driver\n");
                break;
            return false;
        }

        sMutex.lock();
@@ -89,15 +86,7 @@ public:
        sMutex.lock();
        delete mServer;
        mServer = NULL;
            if (mDone)
                goto done;
            sMutex.unlock();
            // wait a bit before retrying
            sleep(1);
        }

        sMutex.lock();
done:
        JNIEnv* env = AndroidRuntime::getJNIEnv();
        env->SetIntField(mJavaServer, field_context, 0);
        env->DeleteGlobalRef(mJavaServer);
@@ -107,11 +96,6 @@ done:
        return false;
    }

    void setDone() {
        LOGD("setDone");
        mDone = true; 
    }

    void sendObjectAdded(MtpObjectHandle handle) {
        sMutex.lock();
        if (mServer)
@@ -171,11 +155,6 @@ android_media_MtpServer_stop(JNIEnv *env, jobject thiz)
{
#ifdef HAVE_ANDROID_OS
    LOGD("stop\n");
    sMutex.lock();
    MtpThread *thread = (MtpThread *)env->GetIntField(thiz, field_context);
    if (thread)
        thread->setDone();
    sMutex.unlock();
#endif
}