Loading core/java/android/os/FileBridge.java +9 −3 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import libcore.io.Streams; import java.io.FileDescriptor; import java.io.IOException; import java.io.OutputStream; import java.nio.ByteBuffer; import java.nio.ByteOrder; /** Loading Loading @@ -95,9 +96,11 @@ public class FileBridge extends Thread { @Override public void run() { final byte[] temp = new byte[8192]; final ByteBuffer tempBuffer = ByteBuffer.allocateDirect(8192); final byte[] temp = tempBuffer.hasArray() ? tempBuffer.array() : new byte[8192]; try { while (IoBridge.read(mServer.getFileDescriptor(), temp, 0, MSG_LENGTH) == MSG_LENGTH) { while (IoBridge.read(mServer.getFileDescriptor(), temp, 0, MSG_LENGTH) == MSG_LENGTH) { final int cmd = Memory.peekInt(temp, 0, ByteOrder.BIG_ENDIAN); if (cmd == CMD_WRITE) { // Shuttle data into local file Loading Loading @@ -138,7 +141,10 @@ public class FileBridge extends Thread { public static class FileBridgeOutputStream extends OutputStream { private final ParcelFileDescriptor mClientPfd; private final FileDescriptor mClient; private final byte[] mTemp = new byte[MSG_LENGTH]; private final ByteBuffer mTempBuffer = ByteBuffer.allocateDirect(MSG_LENGTH); private final byte[] mTemp = mTempBuffer.hasArray() ? mTempBuffer.array() : new byte[MSG_LENGTH]; public FileBridgeOutputStream(ParcelFileDescriptor clientPfd) { mClientPfd = clientPfd; Loading Loading
core/java/android/os/FileBridge.java +9 −3 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import libcore.io.Streams; import java.io.FileDescriptor; import java.io.IOException; import java.io.OutputStream; import java.nio.ByteBuffer; import java.nio.ByteOrder; /** Loading Loading @@ -95,9 +96,11 @@ public class FileBridge extends Thread { @Override public void run() { final byte[] temp = new byte[8192]; final ByteBuffer tempBuffer = ByteBuffer.allocateDirect(8192); final byte[] temp = tempBuffer.hasArray() ? tempBuffer.array() : new byte[8192]; try { while (IoBridge.read(mServer.getFileDescriptor(), temp, 0, MSG_LENGTH) == MSG_LENGTH) { while (IoBridge.read(mServer.getFileDescriptor(), temp, 0, MSG_LENGTH) == MSG_LENGTH) { final int cmd = Memory.peekInt(temp, 0, ByteOrder.BIG_ENDIAN); if (cmd == CMD_WRITE) { // Shuttle data into local file Loading Loading @@ -138,7 +141,10 @@ public class FileBridge extends Thread { public static class FileBridgeOutputStream extends OutputStream { private final ParcelFileDescriptor mClientPfd; private final FileDescriptor mClient; private final byte[] mTemp = new byte[MSG_LENGTH]; private final ByteBuffer mTempBuffer = ByteBuffer.allocateDirect(MSG_LENGTH); private final byte[] mTemp = mTempBuffer.hasArray() ? mTempBuffer.array() : new byte[MSG_LENGTH]; public FileBridgeOutputStream(ParcelFileDescriptor clientPfd) { mClientPfd = clientPfd; Loading