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

Commit ea9616e4 authored by Dmitriy Filchenko's avatar Dmitriy Filchenko Committed by android-build-merger
Browse files

Merge \\"Handle long process names correctly.\\" am: e2994438

am: d5a72fae

Change-Id: I18b5e389b35b3d4756dc8ab9094349310eeccf14
parents 33c20d39 d5a72fae
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -299,9 +299,7 @@ int main(int argc, char* const argv[])
    }

    if (!niceName.isEmpty()) {
        const char* procName = niceName.string();
        pthread_setname_np(pthread_self(), procName);
        runtime.setArgv0(procName);
        runtime.setArgv0(niceName.string(), true /* setProcName */);
    }

    if (zygote) {
+9 −1
Original line number Diff line number Diff line
@@ -277,7 +277,15 @@ AndroidRuntime::~AndroidRuntime()
    return jniRegisterNativeMethods(env, className, gMethods, numMethods);
}

void AndroidRuntime::setArgv0(const char* argv0) {
void AndroidRuntime::setArgv0(const char* argv0, bool setProcName) {
    if (setProcName) {
        int len = strlen(argv0);
        if (len < 15) {
            pthread_setname_np(pthread_self(), argv0);
        } else {
            pthread_setname_np(pthread_self(), argv0 + len - 15);
        }
    }
    memset(mArgBlockStart, 0, mArgBlockLength);
    strlcpy(mArgBlockStart, argv0, mArgBlockLength);
}
+1 −3
Original line number Diff line number Diff line
@@ -547,9 +547,7 @@ void android_os_Process_setArgV0(JNIEnv* env, jobject clazz, jstring name)
    }

    if (!name8.isEmpty()) {
        const char* procName = name8.string();
        pthread_setname_np(pthread_self(), procName);
        AndroidRuntime::getRuntime()->setArgv0(procName);
        AndroidRuntime::getRuntime()->setArgv0(name8.string(), true /* setProcName */);
    }
}

+1 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ public:
        Tool,
    };

    void setArgv0(const char* argv0);
    void setArgv0(const char* argv0, bool setProcName = false);
    void addOption(const char* optionString, void* extra_info = NULL);

    /**