diff options
-rw-r--r-- | libs/input/src/com/android/cts/input/VirtualInputDevice.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/input/src/com/android/cts/input/VirtualInputDevice.java b/libs/input/src/com/android/cts/input/VirtualInputDevice.java index e261f0bb2a4..cc58a4325dc 100644 --- a/libs/input/src/com/android/cts/input/VirtualInputDevice.java +++ b/libs/input/src/com/android/cts/input/VirtualInputDevice.java @@ -24,6 +24,7 @@ import android.hardware.input.InputManager; import android.os.Handler; import android.os.HandlerThread; import android.os.ParcelFileDescriptor; +import android.os.SystemProperties; import android.util.JsonReader; import android.util.JsonToken; import android.util.Log; @@ -47,6 +48,8 @@ import java.util.concurrent.TimeUnit; public abstract class VirtualInputDevice implements InputManager.InputDeviceListener, AutoCloseable { private static final String TAG = "VirtualInputDevice"; + private static final int HW_TIMEOUT_MULTIPLIER = SystemProperties.getInt( + "ro.hw_timeout_multiplier", 1); private InputStream mInputStream; private OutputStream mOutputStream; private Instrumentation mInstrumentation; @@ -182,7 +185,7 @@ public abstract class VirtualInputDevice implements // mResultThread should exit when stream is closed. try { // Wait for input device removed callback. - mDeviceRemovedSignal.await(20L, TimeUnit.SECONDS); + mDeviceRemovedSignal.await(HW_TIMEOUT_MULTIPLIER * 20L, TimeUnit.SECONDS); if (mDeviceRemovedSignal.getCount() != 0) { throw new RuntimeException("Did not receive device removed notification in time"); } |