OSDN Git Service

Cleanup sloppy memory handling in ExifOutputStream.
authorRuben Brunk <rubenbrunk@google.com>
Tue, 2 Apr 2013 21:16:22 +0000 (14:16 -0700)
committerRuben Brunk <rubenbrunk@google.com>
Tue, 2 Apr 2013 21:16:22 +0000 (14:16 -0700)
Change-Id: Ifc34a958a6214fa89ee52cfbdeb6d53baa8cd3fd

gallerycommon/src/com/android/gallery3d/exif/ExifOutputStream.java

index e5a5bf0..38b34fc 100644 (file)
@@ -75,6 +75,7 @@ class ExifOutputStream extends FilterOutputStream {
     private int mState = STATE_SOI;
     private int mByteToSkip;
     private int mByteToCopy;
+    private byte[] mSingleByteArray = new byte[1];
     private ByteBuffer mBuffer = ByteBuffer.allocate(4);
     private final ExifInterface mInterface;
 
@@ -190,10 +191,8 @@ class ExifOutputStream extends FilterOutputStream {
      */
     @Override
     public void write(int oneByte) throws IOException {
-        byte[] buf = new byte[] {
-            (byte) (0xff & oneByte)
-        };
-        write(buf);
+        mSingleByteArray[0] = (byte) (0xff & oneByte);
+        write(mSingleByteArray);
     }
 
     /**