Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 596a4ea4 authored by Jin Seok Park's avatar Jin Seok Park Committed by Android (Google) Code Review
Browse files

Merge "Prevent skipBytes from infinitely looping"

parents a942834c 18b36460
Loading
Loading
Loading
Loading
+11 −6
Original line number Diff line number Diff line
@@ -5019,13 +5019,18 @@ public class ExifInterface {

        @Override
        public int skipBytes(int byteCount) throws IOException {
            int totalSkip = Math.min(byteCount, mLength - mPosition);
            int skipped = 0;
            while (skipped < totalSkip) {
                skipped += mDataInputStream.skipBytes(totalSkip - skipped);
            int totalBytesToSkip = Math.min(byteCount, mLength - mPosition);
            int totalSkipped = 0;
            while (totalSkipped < totalBytesToSkip) {
                int skipped = mDataInputStream.skipBytes(totalBytesToSkip - totalSkipped);
                if (skipped > 0) {
                    totalSkipped += skipped;
                } else {
                    break;
                }
            }
            mPosition += skipped;
            return skipped;
            mPosition += totalSkipped;
            return totalSkipped;
        }

        public int readUnsignedShort() throws IOException {