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

Commit 8fb3e799 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge changes I9ad74037,I50b29ef9 am: c8a2dbdb am: 09bac394 am: 39300c2b am: 2abd875c

Change-Id: Ie217547c2d210209ae12f27fff1bf1861730e355
parents 03ddefbc 2abd875c
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -292,19 +292,11 @@ static void JHwParcel_native_enforceInterface(
        return;
    }

    const jchar *interfaceName = env->GetStringCritical(interfaceNameObj, NULL);
    const char *interfaceName = env->GetStringUTFChars(interfaceNameObj, NULL);
    if (interfaceName) {
        String8 interfaceNameCopy = String8(String16(
                reinterpret_cast<const char16_t *>(interfaceName),
                env->GetStringLength(interfaceNameObj)));

        env->ReleaseStringCritical(interfaceNameObj, interfaceName);
        interfaceName = NULL;

        hardware::Parcel *parcel =
            JHwParcel::GetNativeContext(env, thiz)->getParcel();

        bool valid = parcel->enforceInterface(interfaceNameCopy.string());
        bool valid = parcel->enforceInterface(interfaceName);

        if (!valid) {
            jniThrowException(
@@ -312,6 +304,7 @@ static void JHwParcel_native_enforceInterface(
                    "java/lang/SecurityException",
                    "HWBinder invocation to an incorrect interface");
        }
        env->ReleaseStringUTFChars(interfaceNameObj, interfaceName);
    }
}

+2 −2
Original line number Diff line number Diff line
@@ -625,8 +625,8 @@ static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jlong
            IPCThreadState* threadState = IPCThreadState::self();
            const int32_t oldPolicy = threadState->getStrictModePolicy();
            const bool isValid = parcel->enforceInterface(
                String16(reinterpret_cast<const char16_t*>(str),
                         env->GetStringLength(name)),
                reinterpret_cast<const char16_t*>(str),
                env->GetStringLength(name),
                threadState);
            env->ReleaseStringCritical(name, str);
            if (isValid) {