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

Commit 627c2ce4 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 8594204 from 81ee4a55 to tm-qpr1-release

Change-Id: I33d579b5d38f95fcb89550fff45b01e7fcd3faf8
parents 402d2c0f 81ee4a55
Loading
Loading
Loading
Loading
+45 −52
Original line number Diff line number Diff line
@@ -21,8 +21,6 @@ import android.os.Bundle;
import android.os.Parcel;
import android.os.ParcelFileDescriptor;
import android.os.Parcelable;
import android.system.ErrnoException;
import android.system.Os;

import java.io.Closeable;
import java.io.FileDescriptor;
@@ -205,24 +203,19 @@ public class AssetFileDescriptor implements Parcelable, Closeable {
     */
    public static class AutoCloseInputStream
            extends ParcelFileDescriptor.AutoCloseInputStream {
        private final long mSizeFromStartOffset;
        private final long mStartOffset;
        private long mPosFromStartOffset;
        private long mRemaining;

        public AutoCloseInputStream(AssetFileDescriptor fd) throws IOException {
            super(fd.getParcelFileDescriptor());
            // this skip is necessary if getChannel() is called
            super.skip(fd.getStartOffset());
            mSizeFromStartOffset = fd.getLength();
            mStartOffset = fd.getStartOffset();
            mRemaining = (int) fd.getLength();
        }

        @Override
        public int available() throws IOException {
            long available = mSizeFromStartOffset - mPosFromStartOffset;
            return available >= 0
                    ? (available < 0x7fffffff ? (int) available : 0x7fffffff)
                    : 0;
            return mRemaining >= 0
                    ? (mRemaining < 0x7fffffff ? (int) mRemaining : 0x7fffffff)
                    : super.available();
        }

        @Override
@@ -234,24 +227,15 @@ public class AssetFileDescriptor implements Parcelable, Closeable {

        @Override
        public int read(byte[] buffer, int offset, int count) throws IOException {
            int available = available();

            if (available <= 0) {
                return -1;
            } else {
                if (count > available) count = available;
                try {
                    int res = Os.pread(getFD(), buffer, offset, count,
                            mStartOffset + mPosFromStartOffset);
                    // pread returns 0 at end of file, while java's InputStream interface
                    // requires -1
                    if (res == 0) res = -1;
                    if (res >= 0) mPosFromStartOffset += res;
            if (mRemaining >= 0) {
                if (mRemaining == 0) return -1;
                if (count > mRemaining) count = (int) mRemaining;
                int res = super.read(buffer, offset, count);
                if (res >= 0) mRemaining -= res;
                return res;
                } catch (ErrnoException e) {
                    throw new IOException(e);
                }
            }

            return super.read(buffer, offset, count);
        }

        @Override
@@ -261,32 +245,42 @@ public class AssetFileDescriptor implements Parcelable, Closeable {

        @Override
        public long skip(long count) throws IOException {
            int available = available();
            if (available <= 0) {
                return -1;
            } else {
                if (count > available) count = available;
                mPosFromStartOffset += count;
                return count;
            if (mRemaining >= 0) {
                if (mRemaining == 0) return -1;
                if (count > mRemaining) count = mRemaining;
                long res = super.skip(count);
                if (res >= 0) mRemaining -= res;
                return res;
            }

            return super.skip(count);
        }

        @Override
        public void mark(int readlimit) {
            if (mRemaining >= 0) {
                // Not supported.
                return;
            }
            super.mark(readlimit);
        }

        @Override
        public boolean markSupported() {
            if (mRemaining >= 0) {
                return false;
            }
            return super.markSupported();
        }

        @Override
        public synchronized void reset() throws IOException {
            if (mRemaining >= 0) {
                // Not supported.
                return;
            }
            super.reset();
        }
    }

    /**
@@ -381,7 +375,6 @@ public class AssetFileDescriptor implements Parcelable, Closeable {
        public AssetFileDescriptor createFromParcel(Parcel in) {
            return new AssetFileDescriptor(in);
        }

        public AssetFileDescriptor[] newArray(int size) {
            return new AssetFileDescriptor[size];
        }
+4 −2
Original line number Diff line number Diff line
@@ -712,14 +712,16 @@ public final class Sensor {
    public static final String STRING_TYPE_HINGE_ANGLE = "android.sensor.hinge_angle";

    /**
     * A constant describing a head tracker sensor.
     * A constant describing a head tracker sensor. Note that this sensor type is typically not
     * available for apps to use.
     *
     * See {@link android.hardware.SensorEvent#values SensorEvent.values} for more details.
     */
    public static final int TYPE_HEAD_TRACKER = 37;

    /**
     * A constant string describing a head tracker sensor.
     * A constant string describing a head tracker sensor. Note that this sensor type is typically
     * not available for apps to use.
     *
     * See {@link android.hardware.SensorEvent#values SensorEvent.values} for more details.
     */
+10 −1
Original line number Diff line number Diff line
@@ -166,7 +166,16 @@ public final class OutputConfiguration implements Parcelable {
     * {@link #TIMESTAMP_BASE_MONOTONIC}, which is roughly the same time base as
     * {@link android.os.SystemClock#uptimeMillis}.</li>
     * <li> For all other cases, the timestamp base is {@link #TIMESTAMP_BASE_SENSOR}, the same
     * as what's specified by {@link CameraCharacteristics#SENSOR_INFO_TIMESTAMP_SOURCE}.</li>
     * as what's specified by {@link CameraCharacteristics#SENSOR_INFO_TIMESTAMP_SOURCE}.
     * <ul><li> For a SurfaceTexture output surface, the camera system re-spaces the delivery
     * of output frames based on image readout intervals, reducing viewfinder jitter. The timestamps
     * of images remain to be {@link #TIMESTAMP_BASE_SENSOR}.</li></ul></li>
     *
     * <p>Note that the reduction of frame jitter for SurfaceView and SurfaceTexture comes with
     * slight increase in photon-to-photon latency, which is the time from when photons hit the
     * scene to when the corresponding pixels show up on the screen. If the photon-to-photon latency
     * is more important than the smoothness of viewfinder, {@link #TIMESTAMP_BASE_SENSOR} should be
     * used instead.</p>
     *
     * @see #TIMESTAMP_BASE_CHOREOGRAPHER_SYNCED
     * @see #TIMESTAMP_BASE_MONOTONIC
+3 −2
Original line number Diff line number Diff line
@@ -129,8 +129,9 @@ public abstract class RecognitionService extends Service {
            @NonNull AttributionSource attributionSource) {
        try {
            if (mCurrentCallback == null) {
                boolean preflightPermissionCheckPassed = checkPermissionForPreflightNotHardDenied(
                        attributionSource);
                boolean preflightPermissionCheckPassed =
                        intent.hasExtra(RecognizerIntent.EXTRA_AUDIO_SOURCE)
                        || checkPermissionForPreflightNotHardDenied(attributionSource);
                if (preflightPermissionCheckPassed) {
                    if (DBG) {
                        Log.d(TAG, "created new mCurrentCallback, listener = "
+1 −1
Original line number Diff line number Diff line
@@ -7044,7 +7044,7 @@
                 android:permission="android.permission.BIND_JOB_SERVICE">
        </service>

        <service android:name="com.android.server.companion.AssociationCleanUpService"
        <service android:name="com.android.server.companion.InactiveAssociationsRemovalService"
                 android:permission="android.permission.BIND_JOB_SERVICE">
        </service>

Loading