Skip to content

Commit ca1605e

Browse files
author
Christopher Tate
committed
Don't crash during full backup when CheckJNI is enabled
It's not okay to pass null to JNI methods and trust that it will just back off and return a null result cleanly. Fixes bug 5361822 . Change-Id: Id8a17b958fd183d55cb6475f394e158c13aae2ea
1 parent 904fb9d commit ca1605e

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

core/jni/android_app_backup_FullBackup.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -76,10 +76,10 @@ static int backupToTar(JNIEnv* env, jobject clazz, jstring packageNameObj,
7676
int ret;
7777

7878
// Extract the various strings, allowing for null object pointers
79-
const char* packagenamechars = env->GetStringUTFChars(packageNameObj, NULL);
80-
const char* rootchars = env->GetStringUTFChars(rootpathObj, NULL);
81-
const char* pathchars = env->GetStringUTFChars(pathObj, NULL);
82-
const char* domainchars = env->GetStringUTFChars(domainObj, NULL);
79+
const char* packagenamechars = (packageNameObj) ? env->GetStringUTFChars(packageNameObj, NULL) : NULL;
80+
const char* rootchars = (rootpathObj) ? env->GetStringUTFChars(rootpathObj, NULL) : NULL;
81+
const char* pathchars = (pathObj) ? env->GetStringUTFChars(pathObj, NULL) : NULL;
82+
const char* domainchars = (domainObj) ? env->GetStringUTFChars(domainObj, NULL) : NULL;
8383

8484
String8 packageName(packagenamechars ? packagenamechars : "");
8585
String8 rootpath(rootchars ? rootchars : "");

0 commit comments

Comments
 (0)