From a7fa2e592e2e579e5acdb903dba83fc074ebc215 Mon Sep 17 00:00:00 2001 From: Narayan Kamath Date: Fri, 24 Jan 2014 14:06:08 +0000 Subject: [PATCH] AssetManager cookies are now int32_t, not void*. This makes cookies on both the java & native side 4 byte signed integral values. Change-Id: I6843d6c5ba7ff42dc454f20240844a158ae8e818 --- core/jni/android_util_AssetManager.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp index 2c23f9db9468b..883691856bbe0 100644 --- a/core/jni/android_util_AssetManager.cpp +++ b/core/jni/android_util_AssetManager.cpp @@ -229,7 +229,8 @@ static jint android_content_AssetManager_openNonAssetNative(JNIEnv* env, jobject } Asset* a = cookie - ? am->openNonAsset((void*)cookie, fileName8.c_str(), (Asset::AccessMode)mode) + ? am->openNonAsset(static_cast(cookie), fileName8.c_str(), + (Asset::AccessMode)mode) : am->openNonAsset(fileName8.c_str(), (Asset::AccessMode)mode); if (a == NULL) { @@ -260,7 +261,7 @@ static jobject android_content_AssetManager_openNonAssetFdNative(JNIEnv* env, jo } Asset* a = cookie - ? am->openNonAsset((void*)cookie, fileName8.c_str(), Asset::ACCESS_RANDOM) + ? am->openNonAsset(static_cast(cookie), fileName8.c_str(), Asset::ACCESS_RANDOM) : am->openNonAsset(fileName8.c_str(), Asset::ACCESS_RANDOM); if (a == NULL) { @@ -435,10 +436,10 @@ static jint android_content_AssetManager_addAssetPath(JNIEnv* env, jobject clazz return 0; } - void* cookie; + int32_t cookie; bool res = am->addAssetPath(String8(path8.c_str()), &cookie); - return (res) ? (jint)cookie : 0; + return (res) ? static_cast(cookie) : 0; } static jboolean android_content_AssetManager_isUpToDate(JNIEnv* env, jobject clazz) @@ -800,7 +801,7 @@ static jstring android_content_AssetManager_getCookieName(JNIEnv* env, jobject c if (am == NULL) { return NULL; } - String8 name(am->getAssetPath((void*)cookie)); + String8 name(am->getAssetPath(static_cast(cookie))); if (name.length() == 0) { jniThrowException(env, "java/lang/IndexOutOfBoundsException", "Empty cookie name"); return NULL; @@ -1386,7 +1387,7 @@ static jint android_content_AssetManager_openXmlAssetNative(JNIEnv* env, jobject } Asset* a = cookie - ? am->openNonAsset((void*)cookie, fileName8.c_str(), Asset::ACCESS_BUFFER) + ? am->openNonAsset(static_cast(cookie), fileName8.c_str(), Asset::ACCESS_BUFFER) : am->openNonAsset(fileName8.c_str(), Asset::ACCESS_BUFFER); if (a == NULL) {