Loading core/java/android/os/Binder.java +4 −4 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ public class Binder implements IBinder { private static String sDumpDisabled = null; /* mObject is used by native code, do not remove or rename */ private int mObject; private long mObject; private IInterface mOwner; private String mDescriptor; Loading Loading @@ -390,7 +390,7 @@ public class Binder implements IBinder { private native final void destroy(); // Entry point from android_util_Binder.cpp's onTransact private boolean execTransact(int code, int dataObj, int replyObj, private boolean execTransact(int code, long dataObj, long replyObj, int flags) { Parcel data = Parcel.obtain(dataObj); Parcel reply = Parcel.obtain(replyObj); Loading Loading @@ -499,6 +499,6 @@ final class BinderProxy implements IBinder { } final private WeakReference mSelf; private int mObject; private int mOrgue; private long mObject; private long mOrgue; } core/java/android/os/Parcel.java +47 −42 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ public final class Parcel { private static final String TAG = "Parcel"; @SuppressWarnings({"UnusedDeclaration"}) private int mNativePtr; // used by native code private long mNativePtr; // used by native code /** * Flag indicating if {@link #mNativePtr} was allocated by this object, Loading Loading @@ -233,47 +233,47 @@ public final class Parcel { private static final int EX_NETWORK_MAIN_THREAD = -6; private static final int EX_HAS_REPLY_HEADER = -128; // special; see below private static native int nativeDataSize(int nativePtr); private static native int nativeDataAvail(int nativePtr); private static native int nativeDataPosition(int nativePtr); private static native int nativeDataCapacity(int nativePtr); private static native void nativeSetDataSize(int nativePtr, int size); private static native void nativeSetDataPosition(int nativePtr, int pos); private static native void nativeSetDataCapacity(int nativePtr, int size); private static native boolean nativePushAllowFds(int nativePtr, boolean allowFds); private static native void nativeRestoreAllowFds(int nativePtr, boolean lastValue); private static native void nativeWriteByteArray(int nativePtr, byte[] b, int offset, int len); private static native void nativeWriteInt(int nativePtr, int val); private static native void nativeWriteLong(int nativePtr, long val); private static native void nativeWriteFloat(int nativePtr, float val); private static native void nativeWriteDouble(int nativePtr, double val); private static native void nativeWriteString(int nativePtr, String val); private static native void nativeWriteStrongBinder(int nativePtr, IBinder val); private static native void nativeWriteFileDescriptor(int nativePtr, FileDescriptor val); private static native byte[] nativeCreateByteArray(int nativePtr); private static native int nativeReadInt(int nativePtr); private static native long nativeReadLong(int nativePtr); private static native float nativeReadFloat(int nativePtr); private static native double nativeReadDouble(int nativePtr); private static native String nativeReadString(int nativePtr); private static native IBinder nativeReadStrongBinder(int nativePtr); private static native FileDescriptor nativeReadFileDescriptor(int nativePtr); private static native int nativeCreate(); private static native void nativeFreeBuffer(int nativePtr); private static native void nativeDestroy(int nativePtr); private static native byte[] nativeMarshall(int nativePtr); private static native int nativeDataSize(long nativePtr); private static native int nativeDataAvail(long nativePtr); private static native int nativeDataPosition(long nativePtr); private static native int nativeDataCapacity(long nativePtr); private static native void nativeSetDataSize(long nativePtr, int size); private static native void nativeSetDataPosition(long nativePtr, int pos); private static native void nativeSetDataCapacity(long nativePtr, int size); private static native boolean nativePushAllowFds(long nativePtr, boolean allowFds); private static native void nativeRestoreAllowFds(long nativePtr, boolean lastValue); private static native void nativeWriteByteArray(long nativePtr, byte[] b, int offset, int len); private static native void nativeWriteInt(long nativePtr, int val); private static native void nativeWriteLong(long nativePtr, long val); private static native void nativeWriteFloat(long nativePtr, float val); private static native void nativeWriteDouble(long nativePtr, double val); private static native void nativeWriteString(long nativePtr, String val); private static native void nativeWriteStrongBinder(long nativePtr, IBinder val); private static native void nativeWriteFileDescriptor(long nativePtr, FileDescriptor val); private static native byte[] nativeCreateByteArray(long nativePtr); private static native int nativeReadInt(long nativePtr); private static native long nativeReadLong(long nativePtr); private static native float nativeReadFloat(long nativePtr); private static native double nativeReadDouble(long nativePtr); private static native String nativeReadString(long nativePtr); private static native IBinder nativeReadStrongBinder(long nativePtr); private static native FileDescriptor nativeReadFileDescriptor(long nativePtr); private static native long nativeCreate(); private static native void nativeFreeBuffer(long nativePtr); private static native void nativeDestroy(long nativePtr); private static native byte[] nativeMarshall(long nativePtr); private static native void nativeUnmarshall( int nativePtr, byte[] data, int offest, int length); long nativePtr, byte[] data, int offest, int length); private static native void nativeAppendFrom( int thisNativePtr, int otherNativePtr, int offset, int length); private static native boolean nativeHasFileDescriptors(int nativePtr); private static native void nativeWriteInterfaceToken(int nativePtr, String interfaceName); private static native void nativeEnforceInterface(int nativePtr, String interfaceName); long thisNativePtr, long otherNativePtr, int offset, int length); private static native boolean nativeHasFileDescriptors(long nativePtr); private static native void nativeWriteInterfaceToken(long nativePtr, String interfaceName); private static native void nativeEnforceInterface(long nativePtr, String interfaceName); public final static Parcelable.Creator<String> STRING_CREATOR = new Parcelable.Creator<String>() { Loading Loading @@ -2248,6 +2248,11 @@ public final class Parcel { /** @hide for internal use only. */ static protected final Parcel obtain(int obj) { throw new UnsupportedOperationException(); } /** @hide */ static protected final Parcel obtain(long obj) { final Parcel[] pool = sHolderPool; synchronized (pool) { Parcel p; Loading @@ -2266,7 +2271,7 @@ public final class Parcel { return new Parcel(obj); } private Parcel(int nativePtr) { private Parcel(long nativePtr) { if (DEBUG_RECYCLE) { mStack = new RuntimeException(); } Loading @@ -2274,7 +2279,7 @@ public final class Parcel { init(nativePtr); } private void init(int nativePtr) { private void init(long nativePtr) { if (nativePtr != 0) { mNativePtr = nativePtr; mOwnsNativeParcelObject = false; Loading core/jni/android_os_Parcel.cpp +75 −75 Original line number Diff line number Diff line Loading @@ -69,7 +69,7 @@ static struct parcel_offsets_t Parcel* parcelForJavaObject(JNIEnv* env, jobject obj) { if (obj) { Parcel* p = (Parcel*)env->GetIntField(obj, gParcelOffsets.mNativePtr); Parcel* p = (Parcel*)env->GetLongField(obj, gParcelOffsets.mNativePtr); if (p != NULL) { return p; } Loading @@ -88,31 +88,31 @@ void recycleJavaParcelObject(JNIEnv* env, jobject parcelObj) env->CallVoidMethod(parcelObj, gParcelOffsets.recycle); } static jint android_os_Parcel_dataSize(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataSize(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataSize() : 0; } static jint android_os_Parcel_dataAvail(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataAvail(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataAvail() : 0; } static jint android_os_Parcel_dataPosition(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataPosition(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataPosition() : 0; } static jint android_os_Parcel_dataCapacity(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataCapacity(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataCapacity() : 0; } static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jint nativePtr, jint size) static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jlong nativePtr, jint size) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -123,7 +123,7 @@ static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jint nativePtr, jint pos) static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jlong nativePtr, jint pos) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -131,7 +131,7 @@ static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jint na } } static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jint nativePtr, jint size) static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jlong nativePtr, jint size) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -142,7 +142,7 @@ static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jint na } } static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jint nativePtr, jboolean allowFds) static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jlong nativePtr, jboolean allowFds) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); jboolean ret = JNI_TRUE; Loading @@ -152,7 +152,7 @@ static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jint n return ret; } static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jint nativePtr, jboolean lastValue) static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jlong nativePtr, jboolean lastValue) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -160,7 +160,7 @@ static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jint na } } static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jint nativePtr, jobject data, static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jlong nativePtr, jobject data, jint offset, jint length) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -187,7 +187,7 @@ static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jint nativePtr, jint val) { static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jlong nativePtr, jint val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); const status_t err = parcel->writeInt32(val); if (err != NO_ERROR) { Loading @@ -195,7 +195,7 @@ static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jint nativePtr } } static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jint nativePtr, jlong val) static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jlong nativePtr, jlong val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -206,7 +206,7 @@ static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jint nativePt } } static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jint nativePtr, jfloat val) static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jlong nativePtr, jfloat val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -217,7 +217,7 @@ static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jint nativePtr, jdouble val) static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jlong nativePtr, jdouble val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -228,7 +228,7 @@ static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jint nativePtr, jstring val) static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jlong nativePtr, jstring val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -248,7 +248,7 @@ static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jint nativePtr, jobject object) static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jlong nativePtr, jobject object) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -259,7 +259,7 @@ static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jint } } static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jint nativePtr, jobject object) static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jlong nativePtr, jobject object) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -271,7 +271,7 @@ static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jin } } static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, jint nativePtr) static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, jlong nativePtr) { jbyteArray ret = NULL; Loading @@ -297,7 +297,7 @@ static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, j return ret; } static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -306,7 +306,7 @@ static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jint nativePtr) return 0; } static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jint nativePtr) static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -315,7 +315,7 @@ static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jint nativePt return 0; } static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jint nativePtr) static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -324,7 +324,7 @@ static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jint native return 0; } static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jint nativePtr) static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -333,7 +333,7 @@ static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jint nati return 0; } static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jint nativePtr) static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -347,7 +347,7 @@ static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jint nati return NULL; } static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jint nativePtr) static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -356,7 +356,7 @@ static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jin return NULL; } static jobject android_os_Parcel_readFileDescriptor(JNIEnv* env, jclass clazz, jint nativePtr) static jobject android_os_Parcel_readFileDescriptor(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading Loading @@ -468,13 +468,13 @@ static void android_os_Parcel_clearFileDescriptor(JNIEnv* env, jclass clazz, job } } static jint android_os_Parcel_create(JNIEnv* env, jclass clazz) static jlong android_os_Parcel_create(JNIEnv* env, jclass clazz) { Parcel* parcel = new Parcel(); return reinterpret_cast<jint>(parcel); return reinterpret_cast<jlong>(parcel); } static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jint nativePtr) static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -482,13 +482,13 @@ static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_destroy(JNIEnv* env, jclass clazz, jint nativePtr) static void android_os_Parcel_destroy(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); delete parcel; } static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jint nativePtr) static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel == NULL) { Loading Loading @@ -517,7 +517,7 @@ static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jint nat return ret; } static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jint nativePtr, static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jlong nativePtr, jbyteArray data, jint offset, jint length) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -538,8 +538,8 @@ static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jint thisNativePtr, jint otherNativePtr, jint offset, jint length) static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jlong thisNativePtr, jlong otherNativePtr, jint offset, jint length) { Parcel* thisParcel = reinterpret_cast<Parcel*>(thisNativePtr); if (thisParcel == NULL) { Loading @@ -556,7 +556,7 @@ static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jint thisNat } } static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, jint nativePtr) static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, jlong nativePtr) { jboolean ret = JNI_FALSE; Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -568,7 +568,7 @@ static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, return ret; } static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jint nativePtr, static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jlong nativePtr, jstring name) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -583,7 +583,7 @@ static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jin } } static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jint nativePtr, jstring name) static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jlong nativePtr, jstring name) { jboolean ret = JNI_FALSE; Loading Loading @@ -622,50 +622,50 @@ static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jint n // ---------------------------------------------------------------------------- static const JNINativeMethod gParcelMethods[] = { {"nativeDataSize", "(I)I", (void*)android_os_Parcel_dataSize}, {"nativeDataAvail", "(I)I", (void*)android_os_Parcel_dataAvail}, {"nativeDataPosition", "(I)I", (void*)android_os_Parcel_dataPosition}, {"nativeDataCapacity", "(I)I", (void*)android_os_Parcel_dataCapacity}, {"nativeSetDataSize", "(II)V", (void*)android_os_Parcel_setDataSize}, {"nativeSetDataPosition", "(II)V", (void*)android_os_Parcel_setDataPosition}, {"nativeSetDataCapacity", "(II)V", (void*)android_os_Parcel_setDataCapacity}, {"nativePushAllowFds", "(IZ)Z", (void*)android_os_Parcel_pushAllowFds}, {"nativeRestoreAllowFds", "(IZ)V", (void*)android_os_Parcel_restoreAllowFds}, {"nativeWriteByteArray", "(I[BII)V", (void*)android_os_Parcel_writeNative}, {"nativeWriteInt", "(II)V", (void*)android_os_Parcel_writeInt}, {"nativeWriteLong", "(IJ)V", (void*)android_os_Parcel_writeLong}, {"nativeWriteFloat", "(IF)V", (void*)android_os_Parcel_writeFloat}, {"nativeWriteDouble", "(ID)V", (void*)android_os_Parcel_writeDouble}, {"nativeWriteString", "(ILjava/lang/String;)V", (void*)android_os_Parcel_writeString}, {"nativeWriteStrongBinder", "(ILandroid/os/IBinder;)V", (void*)android_os_Parcel_writeStrongBinder}, {"nativeWriteFileDescriptor", "(ILjava/io/FileDescriptor;)V", (void*)android_os_Parcel_writeFileDescriptor}, {"nativeCreateByteArray", "(I)[B", (void*)android_os_Parcel_createByteArray}, {"nativeReadInt", "(I)I", (void*)android_os_Parcel_readInt}, {"nativeReadLong", "(I)J", (void*)android_os_Parcel_readLong}, {"nativeReadFloat", "(I)F", (void*)android_os_Parcel_readFloat}, {"nativeReadDouble", "(I)D", (void*)android_os_Parcel_readDouble}, {"nativeReadString", "(I)Ljava/lang/String;", (void*)android_os_Parcel_readString}, {"nativeReadStrongBinder", "(I)Landroid/os/IBinder;", (void*)android_os_Parcel_readStrongBinder}, {"nativeReadFileDescriptor", "(I)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_readFileDescriptor}, {"nativeDataSize", "(J)I", (void*)android_os_Parcel_dataSize}, {"nativeDataAvail", "(J)I", (void*)android_os_Parcel_dataAvail}, {"nativeDataPosition", "(J)I", (void*)android_os_Parcel_dataPosition}, {"nativeDataCapacity", "(J)I", (void*)android_os_Parcel_dataCapacity}, {"nativeSetDataSize", "(JI)V", (void*)android_os_Parcel_setDataSize}, {"nativeSetDataPosition", "(JI)V", (void*)android_os_Parcel_setDataPosition}, {"nativeSetDataCapacity", "(JI)V", (void*)android_os_Parcel_setDataCapacity}, {"nativePushAllowFds", "(JZ)Z", (void*)android_os_Parcel_pushAllowFds}, {"nativeRestoreAllowFds", "(JZ)V", (void*)android_os_Parcel_restoreAllowFds}, {"nativeWriteByteArray", "(J[BII)V", (void*)android_os_Parcel_writeNative}, {"nativeWriteInt", "(JI)V", (void*)android_os_Parcel_writeInt}, {"nativeWriteLong", "(JJ)V", (void*)android_os_Parcel_writeLong}, {"nativeWriteFloat", "(JF)V", (void*)android_os_Parcel_writeFloat}, {"nativeWriteDouble", "(JD)V", (void*)android_os_Parcel_writeDouble}, {"nativeWriteString", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeString}, {"nativeWriteStrongBinder", "(JLandroid/os/IBinder;)V", (void*)android_os_Parcel_writeStrongBinder}, {"nativeWriteFileDescriptor", "(JLjava/io/FileDescriptor;)V", (void*)android_os_Parcel_writeFileDescriptor}, {"nativeCreateByteArray", "(J)[B", (void*)android_os_Parcel_createByteArray}, {"nativeReadInt", "(J)I", (void*)android_os_Parcel_readInt}, {"nativeReadLong", "(J)J", (void*)android_os_Parcel_readLong}, {"nativeReadFloat", "(J)F", (void*)android_os_Parcel_readFloat}, {"nativeReadDouble", "(J)D", (void*)android_os_Parcel_readDouble}, {"nativeReadString", "(J)Ljava/lang/String;", (void*)android_os_Parcel_readString}, {"nativeReadStrongBinder", "(J)Landroid/os/IBinder;", (void*)android_os_Parcel_readStrongBinder}, {"nativeReadFileDescriptor", "(J)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_readFileDescriptor}, {"openFileDescriptor", "(Ljava/lang/String;I)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_openFileDescriptor}, {"dupFileDescriptor", "(Ljava/io/FileDescriptor;)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_dupFileDescriptor}, {"closeFileDescriptor", "(Ljava/io/FileDescriptor;)V", (void*)android_os_Parcel_closeFileDescriptor}, {"clearFileDescriptor", "(Ljava/io/FileDescriptor;)V", (void*)android_os_Parcel_clearFileDescriptor}, {"nativeCreate", "()I", (void*)android_os_Parcel_create}, {"nativeFreeBuffer", "(I)V", (void*)android_os_Parcel_freeBuffer}, {"nativeDestroy", "(I)V", (void*)android_os_Parcel_destroy}, {"nativeCreate", "()J", (void*)android_os_Parcel_create}, {"nativeFreeBuffer", "(J)V", (void*)android_os_Parcel_freeBuffer}, {"nativeDestroy", "(J)V", (void*)android_os_Parcel_destroy}, {"nativeMarshall", "(I)[B", (void*)android_os_Parcel_marshall}, {"nativeUnmarshall", "(I[BII)V", (void*)android_os_Parcel_unmarshall}, {"nativeAppendFrom", "(IIII)V", (void*)android_os_Parcel_appendFrom}, {"nativeHasFileDescriptors", "(I)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(ILjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(ILjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, {"nativeMarshall", "(J)[B", (void*)android_os_Parcel_marshall}, {"nativeUnmarshall", "(J[BII)V", (void*)android_os_Parcel_unmarshall}, {"nativeAppendFrom", "(JJII)V", (void*)android_os_Parcel_appendFrom}, {"nativeHasFileDescriptors", "(J)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(JLjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, }; const char* const kParcelPathName = "android/os/Parcel"; Loading @@ -678,7 +678,7 @@ int register_android_os_Parcel(JNIEnv* env) LOG_FATAL_IF(clazz == NULL, "Unable to find class android.os.Parcel"); gParcelOffsets.clazz = (jclass) env->NewGlobalRef(clazz); gParcelOffsets.mNativePtr = env->GetFieldID(clazz, "mNativePtr", "I"); gParcelOffsets.mNativePtr = env->GetFieldID(clazz, "mNativePtr", "J"); gParcelOffsets.obtain = env->GetStaticMethodID(clazz, "obtain", "()Landroid/os/Parcel;"); gParcelOffsets.recycle = env->GetMethodID(clazz, "recycle", "()V"); Loading Loading
core/java/android/os/Binder.java +4 −4 Original line number Diff line number Diff line Loading @@ -56,7 +56,7 @@ public class Binder implements IBinder { private static String sDumpDisabled = null; /* mObject is used by native code, do not remove or rename */ private int mObject; private long mObject; private IInterface mOwner; private String mDescriptor; Loading Loading @@ -390,7 +390,7 @@ public class Binder implements IBinder { private native final void destroy(); // Entry point from android_util_Binder.cpp's onTransact private boolean execTransact(int code, int dataObj, int replyObj, private boolean execTransact(int code, long dataObj, long replyObj, int flags) { Parcel data = Parcel.obtain(dataObj); Parcel reply = Parcel.obtain(replyObj); Loading Loading @@ -499,6 +499,6 @@ final class BinderProxy implements IBinder { } final private WeakReference mSelf; private int mObject; private int mOrgue; private long mObject; private long mOrgue; }
core/java/android/os/Parcel.java +47 −42 Original line number Diff line number Diff line Loading @@ -183,7 +183,7 @@ public final class Parcel { private static final String TAG = "Parcel"; @SuppressWarnings({"UnusedDeclaration"}) private int mNativePtr; // used by native code private long mNativePtr; // used by native code /** * Flag indicating if {@link #mNativePtr} was allocated by this object, Loading Loading @@ -233,47 +233,47 @@ public final class Parcel { private static final int EX_NETWORK_MAIN_THREAD = -6; private static final int EX_HAS_REPLY_HEADER = -128; // special; see below private static native int nativeDataSize(int nativePtr); private static native int nativeDataAvail(int nativePtr); private static native int nativeDataPosition(int nativePtr); private static native int nativeDataCapacity(int nativePtr); private static native void nativeSetDataSize(int nativePtr, int size); private static native void nativeSetDataPosition(int nativePtr, int pos); private static native void nativeSetDataCapacity(int nativePtr, int size); private static native boolean nativePushAllowFds(int nativePtr, boolean allowFds); private static native void nativeRestoreAllowFds(int nativePtr, boolean lastValue); private static native void nativeWriteByteArray(int nativePtr, byte[] b, int offset, int len); private static native void nativeWriteInt(int nativePtr, int val); private static native void nativeWriteLong(int nativePtr, long val); private static native void nativeWriteFloat(int nativePtr, float val); private static native void nativeWriteDouble(int nativePtr, double val); private static native void nativeWriteString(int nativePtr, String val); private static native void nativeWriteStrongBinder(int nativePtr, IBinder val); private static native void nativeWriteFileDescriptor(int nativePtr, FileDescriptor val); private static native byte[] nativeCreateByteArray(int nativePtr); private static native int nativeReadInt(int nativePtr); private static native long nativeReadLong(int nativePtr); private static native float nativeReadFloat(int nativePtr); private static native double nativeReadDouble(int nativePtr); private static native String nativeReadString(int nativePtr); private static native IBinder nativeReadStrongBinder(int nativePtr); private static native FileDescriptor nativeReadFileDescriptor(int nativePtr); private static native int nativeCreate(); private static native void nativeFreeBuffer(int nativePtr); private static native void nativeDestroy(int nativePtr); private static native byte[] nativeMarshall(int nativePtr); private static native int nativeDataSize(long nativePtr); private static native int nativeDataAvail(long nativePtr); private static native int nativeDataPosition(long nativePtr); private static native int nativeDataCapacity(long nativePtr); private static native void nativeSetDataSize(long nativePtr, int size); private static native void nativeSetDataPosition(long nativePtr, int pos); private static native void nativeSetDataCapacity(long nativePtr, int size); private static native boolean nativePushAllowFds(long nativePtr, boolean allowFds); private static native void nativeRestoreAllowFds(long nativePtr, boolean lastValue); private static native void nativeWriteByteArray(long nativePtr, byte[] b, int offset, int len); private static native void nativeWriteInt(long nativePtr, int val); private static native void nativeWriteLong(long nativePtr, long val); private static native void nativeWriteFloat(long nativePtr, float val); private static native void nativeWriteDouble(long nativePtr, double val); private static native void nativeWriteString(long nativePtr, String val); private static native void nativeWriteStrongBinder(long nativePtr, IBinder val); private static native void nativeWriteFileDescriptor(long nativePtr, FileDescriptor val); private static native byte[] nativeCreateByteArray(long nativePtr); private static native int nativeReadInt(long nativePtr); private static native long nativeReadLong(long nativePtr); private static native float nativeReadFloat(long nativePtr); private static native double nativeReadDouble(long nativePtr); private static native String nativeReadString(long nativePtr); private static native IBinder nativeReadStrongBinder(long nativePtr); private static native FileDescriptor nativeReadFileDescriptor(long nativePtr); private static native long nativeCreate(); private static native void nativeFreeBuffer(long nativePtr); private static native void nativeDestroy(long nativePtr); private static native byte[] nativeMarshall(long nativePtr); private static native void nativeUnmarshall( int nativePtr, byte[] data, int offest, int length); long nativePtr, byte[] data, int offest, int length); private static native void nativeAppendFrom( int thisNativePtr, int otherNativePtr, int offset, int length); private static native boolean nativeHasFileDescriptors(int nativePtr); private static native void nativeWriteInterfaceToken(int nativePtr, String interfaceName); private static native void nativeEnforceInterface(int nativePtr, String interfaceName); long thisNativePtr, long otherNativePtr, int offset, int length); private static native boolean nativeHasFileDescriptors(long nativePtr); private static native void nativeWriteInterfaceToken(long nativePtr, String interfaceName); private static native void nativeEnforceInterface(long nativePtr, String interfaceName); public final static Parcelable.Creator<String> STRING_CREATOR = new Parcelable.Creator<String>() { Loading Loading @@ -2248,6 +2248,11 @@ public final class Parcel { /** @hide for internal use only. */ static protected final Parcel obtain(int obj) { throw new UnsupportedOperationException(); } /** @hide */ static protected final Parcel obtain(long obj) { final Parcel[] pool = sHolderPool; synchronized (pool) { Parcel p; Loading @@ -2266,7 +2271,7 @@ public final class Parcel { return new Parcel(obj); } private Parcel(int nativePtr) { private Parcel(long nativePtr) { if (DEBUG_RECYCLE) { mStack = new RuntimeException(); } Loading @@ -2274,7 +2279,7 @@ public final class Parcel { init(nativePtr); } private void init(int nativePtr) { private void init(long nativePtr) { if (nativePtr != 0) { mNativePtr = nativePtr; mOwnsNativeParcelObject = false; Loading
core/jni/android_os_Parcel.cpp +75 −75 Original line number Diff line number Diff line Loading @@ -69,7 +69,7 @@ static struct parcel_offsets_t Parcel* parcelForJavaObject(JNIEnv* env, jobject obj) { if (obj) { Parcel* p = (Parcel*)env->GetIntField(obj, gParcelOffsets.mNativePtr); Parcel* p = (Parcel*)env->GetLongField(obj, gParcelOffsets.mNativePtr); if (p != NULL) { return p; } Loading @@ -88,31 +88,31 @@ void recycleJavaParcelObject(JNIEnv* env, jobject parcelObj) env->CallVoidMethod(parcelObj, gParcelOffsets.recycle); } static jint android_os_Parcel_dataSize(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataSize(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataSize() : 0; } static jint android_os_Parcel_dataAvail(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataAvail(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataAvail() : 0; } static jint android_os_Parcel_dataPosition(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataPosition(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataPosition() : 0; } static jint android_os_Parcel_dataCapacity(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_dataCapacity(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); return parcel ? parcel->dataCapacity() : 0; } static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jint nativePtr, jint size) static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jlong nativePtr, jint size) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -123,7 +123,7 @@ static void android_os_Parcel_setDataSize(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jint nativePtr, jint pos) static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jlong nativePtr, jint pos) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -131,7 +131,7 @@ static void android_os_Parcel_setDataPosition(JNIEnv* env, jclass clazz, jint na } } static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jint nativePtr, jint size) static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jlong nativePtr, jint size) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -142,7 +142,7 @@ static void android_os_Parcel_setDataCapacity(JNIEnv* env, jclass clazz, jint na } } static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jint nativePtr, jboolean allowFds) static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jlong nativePtr, jboolean allowFds) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); jboolean ret = JNI_TRUE; Loading @@ -152,7 +152,7 @@ static jboolean android_os_Parcel_pushAllowFds(JNIEnv* env, jclass clazz, jint n return ret; } static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jint nativePtr, jboolean lastValue) static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jlong nativePtr, jboolean lastValue) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -160,7 +160,7 @@ static void android_os_Parcel_restoreAllowFds(JNIEnv* env, jclass clazz, jint na } } static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jint nativePtr, jobject data, static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jlong nativePtr, jobject data, jint offset, jint length) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -187,7 +187,7 @@ static void android_os_Parcel_writeNative(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jint nativePtr, jint val) { static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jlong nativePtr, jint val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); const status_t err = parcel->writeInt32(val); if (err != NO_ERROR) { Loading @@ -195,7 +195,7 @@ static void android_os_Parcel_writeInt(JNIEnv* env, jclass clazz, jint nativePtr } } static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jint nativePtr, jlong val) static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jlong nativePtr, jlong val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -206,7 +206,7 @@ static void android_os_Parcel_writeLong(JNIEnv* env, jclass clazz, jint nativePt } } static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jint nativePtr, jfloat val) static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jlong nativePtr, jfloat val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -217,7 +217,7 @@ static void android_os_Parcel_writeFloat(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jint nativePtr, jdouble val) static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jlong nativePtr, jdouble val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -228,7 +228,7 @@ static void android_os_Parcel_writeDouble(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jint nativePtr, jstring val) static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jlong nativePtr, jstring val) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -248,7 +248,7 @@ static void android_os_Parcel_writeString(JNIEnv* env, jclass clazz, jint native } } static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jint nativePtr, jobject object) static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jlong nativePtr, jobject object) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -259,7 +259,7 @@ static void android_os_Parcel_writeStrongBinder(JNIEnv* env, jclass clazz, jint } } static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jint nativePtr, jobject object) static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jlong nativePtr, jobject object) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -271,7 +271,7 @@ static void android_os_Parcel_writeFileDescriptor(JNIEnv* env, jclass clazz, jin } } static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, jint nativePtr) static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, jlong nativePtr) { jbyteArray ret = NULL; Loading @@ -297,7 +297,7 @@ static jbyteArray android_os_Parcel_createByteArray(JNIEnv* env, jclass clazz, j return ret; } static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jint nativePtr) static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -306,7 +306,7 @@ static jint android_os_Parcel_readInt(JNIEnv* env, jclass clazz, jint nativePtr) return 0; } static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jint nativePtr) static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -315,7 +315,7 @@ static jlong android_os_Parcel_readLong(JNIEnv* env, jclass clazz, jint nativePt return 0; } static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jint nativePtr) static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -324,7 +324,7 @@ static jfloat android_os_Parcel_readFloat(JNIEnv* env, jclass clazz, jint native return 0; } static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jint nativePtr) static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -333,7 +333,7 @@ static jdouble android_os_Parcel_readDouble(JNIEnv* env, jclass clazz, jint nati return 0; } static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jint nativePtr) static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -347,7 +347,7 @@ static jstring android_os_Parcel_readString(JNIEnv* env, jclass clazz, jint nati return NULL; } static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jint nativePtr) static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -356,7 +356,7 @@ static jobject android_os_Parcel_readStrongBinder(JNIEnv* env, jclass clazz, jin return NULL; } static jobject android_os_Parcel_readFileDescriptor(JNIEnv* env, jclass clazz, jint nativePtr) static jobject android_os_Parcel_readFileDescriptor(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading Loading @@ -468,13 +468,13 @@ static void android_os_Parcel_clearFileDescriptor(JNIEnv* env, jclass clazz, job } } static jint android_os_Parcel_create(JNIEnv* env, jclass clazz) static jlong android_os_Parcel_create(JNIEnv* env, jclass clazz) { Parcel* parcel = new Parcel(); return reinterpret_cast<jint>(parcel); return reinterpret_cast<jlong>(parcel); } static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jint nativePtr) static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel != NULL) { Loading @@ -482,13 +482,13 @@ static void android_os_Parcel_freeBuffer(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_destroy(JNIEnv* env, jclass clazz, jint nativePtr) static void android_os_Parcel_destroy(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); delete parcel; } static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jint nativePtr) static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jlong nativePtr) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); if (parcel == NULL) { Loading Loading @@ -517,7 +517,7 @@ static jbyteArray android_os_Parcel_marshall(JNIEnv* env, jclass clazz, jint nat return ret; } static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jint nativePtr, static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jlong nativePtr, jbyteArray data, jint offset, jint length) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -538,8 +538,8 @@ static void android_os_Parcel_unmarshall(JNIEnv* env, jclass clazz, jint nativeP } } static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jint thisNativePtr, jint otherNativePtr, jint offset, jint length) static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jlong thisNativePtr, jlong otherNativePtr, jint offset, jint length) { Parcel* thisParcel = reinterpret_cast<Parcel*>(thisNativePtr); if (thisParcel == NULL) { Loading @@ -556,7 +556,7 @@ static void android_os_Parcel_appendFrom(JNIEnv* env, jclass clazz, jint thisNat } } static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, jint nativePtr) static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, jlong nativePtr) { jboolean ret = JNI_FALSE; Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -568,7 +568,7 @@ static jboolean android_os_Parcel_hasFileDescriptors(JNIEnv* env, jclass clazz, return ret; } static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jint nativePtr, static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jlong nativePtr, jstring name) { Parcel* parcel = reinterpret_cast<Parcel*>(nativePtr); Loading @@ -583,7 +583,7 @@ static void android_os_Parcel_writeInterfaceToken(JNIEnv* env, jclass clazz, jin } } static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jint nativePtr, jstring name) static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jlong nativePtr, jstring name) { jboolean ret = JNI_FALSE; Loading Loading @@ -622,50 +622,50 @@ static void android_os_Parcel_enforceInterface(JNIEnv* env, jclass clazz, jint n // ---------------------------------------------------------------------------- static const JNINativeMethod gParcelMethods[] = { {"nativeDataSize", "(I)I", (void*)android_os_Parcel_dataSize}, {"nativeDataAvail", "(I)I", (void*)android_os_Parcel_dataAvail}, {"nativeDataPosition", "(I)I", (void*)android_os_Parcel_dataPosition}, {"nativeDataCapacity", "(I)I", (void*)android_os_Parcel_dataCapacity}, {"nativeSetDataSize", "(II)V", (void*)android_os_Parcel_setDataSize}, {"nativeSetDataPosition", "(II)V", (void*)android_os_Parcel_setDataPosition}, {"nativeSetDataCapacity", "(II)V", (void*)android_os_Parcel_setDataCapacity}, {"nativePushAllowFds", "(IZ)Z", (void*)android_os_Parcel_pushAllowFds}, {"nativeRestoreAllowFds", "(IZ)V", (void*)android_os_Parcel_restoreAllowFds}, {"nativeWriteByteArray", "(I[BII)V", (void*)android_os_Parcel_writeNative}, {"nativeWriteInt", "(II)V", (void*)android_os_Parcel_writeInt}, {"nativeWriteLong", "(IJ)V", (void*)android_os_Parcel_writeLong}, {"nativeWriteFloat", "(IF)V", (void*)android_os_Parcel_writeFloat}, {"nativeWriteDouble", "(ID)V", (void*)android_os_Parcel_writeDouble}, {"nativeWriteString", "(ILjava/lang/String;)V", (void*)android_os_Parcel_writeString}, {"nativeWriteStrongBinder", "(ILandroid/os/IBinder;)V", (void*)android_os_Parcel_writeStrongBinder}, {"nativeWriteFileDescriptor", "(ILjava/io/FileDescriptor;)V", (void*)android_os_Parcel_writeFileDescriptor}, {"nativeCreateByteArray", "(I)[B", (void*)android_os_Parcel_createByteArray}, {"nativeReadInt", "(I)I", (void*)android_os_Parcel_readInt}, {"nativeReadLong", "(I)J", (void*)android_os_Parcel_readLong}, {"nativeReadFloat", "(I)F", (void*)android_os_Parcel_readFloat}, {"nativeReadDouble", "(I)D", (void*)android_os_Parcel_readDouble}, {"nativeReadString", "(I)Ljava/lang/String;", (void*)android_os_Parcel_readString}, {"nativeReadStrongBinder", "(I)Landroid/os/IBinder;", (void*)android_os_Parcel_readStrongBinder}, {"nativeReadFileDescriptor", "(I)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_readFileDescriptor}, {"nativeDataSize", "(J)I", (void*)android_os_Parcel_dataSize}, {"nativeDataAvail", "(J)I", (void*)android_os_Parcel_dataAvail}, {"nativeDataPosition", "(J)I", (void*)android_os_Parcel_dataPosition}, {"nativeDataCapacity", "(J)I", (void*)android_os_Parcel_dataCapacity}, {"nativeSetDataSize", "(JI)V", (void*)android_os_Parcel_setDataSize}, {"nativeSetDataPosition", "(JI)V", (void*)android_os_Parcel_setDataPosition}, {"nativeSetDataCapacity", "(JI)V", (void*)android_os_Parcel_setDataCapacity}, {"nativePushAllowFds", "(JZ)Z", (void*)android_os_Parcel_pushAllowFds}, {"nativeRestoreAllowFds", "(JZ)V", (void*)android_os_Parcel_restoreAllowFds}, {"nativeWriteByteArray", "(J[BII)V", (void*)android_os_Parcel_writeNative}, {"nativeWriteInt", "(JI)V", (void*)android_os_Parcel_writeInt}, {"nativeWriteLong", "(JJ)V", (void*)android_os_Parcel_writeLong}, {"nativeWriteFloat", "(JF)V", (void*)android_os_Parcel_writeFloat}, {"nativeWriteDouble", "(JD)V", (void*)android_os_Parcel_writeDouble}, {"nativeWriteString", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeString}, {"nativeWriteStrongBinder", "(JLandroid/os/IBinder;)V", (void*)android_os_Parcel_writeStrongBinder}, {"nativeWriteFileDescriptor", "(JLjava/io/FileDescriptor;)V", (void*)android_os_Parcel_writeFileDescriptor}, {"nativeCreateByteArray", "(J)[B", (void*)android_os_Parcel_createByteArray}, {"nativeReadInt", "(J)I", (void*)android_os_Parcel_readInt}, {"nativeReadLong", "(J)J", (void*)android_os_Parcel_readLong}, {"nativeReadFloat", "(J)F", (void*)android_os_Parcel_readFloat}, {"nativeReadDouble", "(J)D", (void*)android_os_Parcel_readDouble}, {"nativeReadString", "(J)Ljava/lang/String;", (void*)android_os_Parcel_readString}, {"nativeReadStrongBinder", "(J)Landroid/os/IBinder;", (void*)android_os_Parcel_readStrongBinder}, {"nativeReadFileDescriptor", "(J)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_readFileDescriptor}, {"openFileDescriptor", "(Ljava/lang/String;I)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_openFileDescriptor}, {"dupFileDescriptor", "(Ljava/io/FileDescriptor;)Ljava/io/FileDescriptor;", (void*)android_os_Parcel_dupFileDescriptor}, {"closeFileDescriptor", "(Ljava/io/FileDescriptor;)V", (void*)android_os_Parcel_closeFileDescriptor}, {"clearFileDescriptor", "(Ljava/io/FileDescriptor;)V", (void*)android_os_Parcel_clearFileDescriptor}, {"nativeCreate", "()I", (void*)android_os_Parcel_create}, {"nativeFreeBuffer", "(I)V", (void*)android_os_Parcel_freeBuffer}, {"nativeDestroy", "(I)V", (void*)android_os_Parcel_destroy}, {"nativeCreate", "()J", (void*)android_os_Parcel_create}, {"nativeFreeBuffer", "(J)V", (void*)android_os_Parcel_freeBuffer}, {"nativeDestroy", "(J)V", (void*)android_os_Parcel_destroy}, {"nativeMarshall", "(I)[B", (void*)android_os_Parcel_marshall}, {"nativeUnmarshall", "(I[BII)V", (void*)android_os_Parcel_unmarshall}, {"nativeAppendFrom", "(IIII)V", (void*)android_os_Parcel_appendFrom}, {"nativeHasFileDescriptors", "(I)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(ILjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(ILjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, {"nativeMarshall", "(J)[B", (void*)android_os_Parcel_marshall}, {"nativeUnmarshall", "(J[BII)V", (void*)android_os_Parcel_unmarshall}, {"nativeAppendFrom", "(JJII)V", (void*)android_os_Parcel_appendFrom}, {"nativeHasFileDescriptors", "(J)Z", (void*)android_os_Parcel_hasFileDescriptors}, {"nativeWriteInterfaceToken", "(JLjava/lang/String;)V", (void*)android_os_Parcel_writeInterfaceToken}, {"nativeEnforceInterface", "(JLjava/lang/String;)V", (void*)android_os_Parcel_enforceInterface}, }; const char* const kParcelPathName = "android/os/Parcel"; Loading @@ -678,7 +678,7 @@ int register_android_os_Parcel(JNIEnv* env) LOG_FATAL_IF(clazz == NULL, "Unable to find class android.os.Parcel"); gParcelOffsets.clazz = (jclass) env->NewGlobalRef(clazz); gParcelOffsets.mNativePtr = env->GetFieldID(clazz, "mNativePtr", "I"); gParcelOffsets.mNativePtr = env->GetFieldID(clazz, "mNativePtr", "J"); gParcelOffsets.obtain = env->GetStaticMethodID(clazz, "obtain", "()Landroid/os/Parcel;"); gParcelOffsets.recycle = env->GetMethodID(clazz, "recycle", "()V"); Loading