summaryrefslogtreecommitdiffstats
path: root/core/jni/android_app_backup_FullBackup.cpp
diff options
context:
space:
mode:
authorAshok Bhat <ashok.bhat@arm.com>2014-01-02 16:52:41 +0000
committerNarayan Kamath <narayan@google.com>2014-01-08 11:54:01 +0000
commit58b8b24256bdc2b613b7fda9151845ed9898a4c7 (patch)
tree8bd0306febcd6b7210ec2176ed4d0a916909d601 /core/jni/android_app_backup_FullBackup.cpp
parent002ae75b829730047240ab20a044a00570eb71d2 (diff)
downloadframeworks_base-58b8b24256bdc2b613b7fda9151845ed9898a4c7.zip
frameworks_base-58b8b24256bdc2b613b7fda9151845ed9898a4c7.tar.gz
frameworks_base-58b8b24256bdc2b613b7fda9151845ed9898a4c7.tar.bz2
AArch64: Use long for pointers in App/Backup
For storing pointers, long is used, as native pointers can be 64-bit. In addition, some minor changes have been done to conform with standard JNI practice (e.g. use of jint instead of int in JNI function prototypes) Change-Id: I7aee49dc26cf6c86af8f1d882e9cd1cc145a1977 Signed-off-by: Ashok Bhat <ashok.bhat@arm.com> Signed-off-by: Marcus Oakland <marcus.oakland@arm.com> Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
Diffstat (limited to 'core/jni/android_app_backup_FullBackup.cpp')
-rw-r--r--core/jni/android_app_backup_FullBackup.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/core/jni/android_app_backup_FullBackup.cpp b/core/jni/android_app_backup_FullBackup.cpp
index 2ca645a..3cfaa82 100644
--- a/core/jni/android_app_backup_FullBackup.cpp
+++ b/core/jni/android_app_backup_FullBackup.cpp
@@ -70,7 +70,7 @@ static struct {
* path: absolute path to the file to be saved
* dataOutput: the BackupDataOutput object that we're saving into
*/
-static int backupToTar(JNIEnv* env, jobject clazz, jstring packageNameObj,
+static jint backupToTar(JNIEnv* env, jobject clazz, jstring packageNameObj,
jstring domainObj, jstring linkdomain,
jstring rootpathObj, jstring pathObj, jobject dataOutputObj) {
int ret;
@@ -92,22 +92,22 @@ static int backupToTar(JNIEnv* env, jobject clazz, jstring packageNameObj,
if (packagenamechars) env->ReleaseStringUTFChars(packageNameObj, packagenamechars);
// Extract the data output fd
- BackupDataWriter* writer = (BackupDataWriter*) env->GetIntField(dataOutputObj,
+ BackupDataWriter* writer = (BackupDataWriter*) env->GetLongField(dataOutputObj,
sBackupDataOutput.mBackupWriter);
// Validate
if (!writer) {
ALOGE("No output stream provided [%s]", path.string());
- return -1;
+ return (jint) -1;
}
if (path.length() < rootpath.length()) {
ALOGE("file path [%s] shorter than root path [%s]",
path.string(), rootpath.string());
- return -1;
+ return (jint) -1;
}
- return write_tarfile(packageName, domain, rootpath, path, writer);
+ return (jint) write_tarfile(packageName, domain, rootpath, path, writer);
}
static const JNINativeMethod g_methods[] = {
@@ -121,7 +121,7 @@ int register_android_app_backup_FullBackup(JNIEnv* env)
jclass clazz = env->FindClass("android/app/backup/BackupDataOutput");
LOG_FATAL_IF(clazz == NULL, "Unable to find class android.app.backup.BackupDataOutput");
- sBackupDataOutput.mBackupWriter = env->GetFieldID(clazz, "mBackupWriter", "I");
+ sBackupDataOutput.mBackupWriter = env->GetFieldID(clazz, "mBackupWriter", "J");
LOG_FATAL_IF(sBackupDataOutput.mBackupwriter == NULL,
"Unable to find mBackupWriter field in android.app.backup.BackupDataOutput");