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

Commit ad3b6162 authored by Tomasz Mikolajewski's avatar Tomasz Mikolajewski
Browse files

Make CotentResolver#openInputStream handle errors from reliable pipes.

Bug: 28967963
Change-Id: I3b1343e91e7b6616ea0d641888f5b41d1b83a8a5
parent 747d945b
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -864,6 +864,34 @@ public class ParcelFileDescriptor implements Parcelable, Closeable {
                super.close();
            }
        }

        @Override
        public int read() throws IOException {
            final int result = super.read();
            if (result == -1 && mPfd.canDetectErrors()) {
                // Check for errors only on EOF, to minimize overhead.
                mPfd.checkError();
            }
            return result;
        }

        @Override
        public int read(byte[] b) throws IOException {
            final int result = super.read(b);
            if (result == -1 && mPfd.canDetectErrors()) {
                mPfd.checkError();
            }
            return result;
        }

        @Override
        public int read(byte[] b, int off, int len) throws IOException {
            final int result = super.read(b, off, len);
            if (result == -1 && mPfd.canDetectErrors()) {
                mPfd.checkError();
            }
            return result;
        }
    }

    /**