summaryrefslogtreecommitdiff
path: root/java/core/src/main/java/com/google/protobuf/UnsafeUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/core/src/main/java/com/google/protobuf/UnsafeUtil.java')
-rw-r--r--java/core/src/main/java/com/google/protobuf/UnsafeUtil.java17
1 files changed, 4 insertions, 13 deletions
diff --git a/java/core/src/main/java/com/google/protobuf/UnsafeUtil.java b/java/core/src/main/java/com/google/protobuf/UnsafeUtil.java
index 051fffc9..6a4787d1 100644
--- a/java/core/src/main/java/com/google/protobuf/UnsafeUtil.java
+++ b/java/core/src/main/java/com/google/protobuf/UnsafeUtil.java
@@ -73,19 +73,10 @@ final class UnsafeUtil {
UNSAFE.putByte(target, offset, value);
}
- // BEGIN Android-removed
- // This method doesn't exist in sun.misc.Unsafe in Android, and leaving the
- // dangling reference causes soft-verification errors when a jarjar'd version
- // of libprotobuf-java-lite is included in the bootclasspath:
- // Soft verification failures in void com.android.framework.protobuf.UnsafeUtil.copyMemory(byte[], long, byte[], long, long)
- // void com.android.framework.protobuf.UnsafeUtil.copyMemory(byte[], long, byte[], long, long): [0x7] couldn't find method sun.misc.Unsafe.copyMemory ([BJ[BJJ)V
- // This method is unused in the current open-source implementation of the
- // protobuf lite runtime, so just remove it for now.
- //static void copyMemory(
- // byte[] src, long srcOffset, byte[] target, long targetOffset, long length) {
- // UNSAFE.copyMemory(src, srcOffset, target, targetOffset, length);
- //}
- // END Android-removed
+ static void copyMemory(
+ byte[] src, long srcOffset, byte[] target, long targetOffset, long length) {
+ UNSAFE.copyMemory(src, srcOffset, target, targetOffset, length);
+ }
static long getLong(byte[] target, long offset) {
return UNSAFE.getLong(target, offset);