aboutsummaryrefslogtreecommitdiff
path: root/src/com/google/android/droiddriver/base/DefaultPoller.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/google/android/droiddriver/base/DefaultPoller.java')
-rw-r--r--src/com/google/android/droiddriver/base/DefaultPoller.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/com/google/android/droiddriver/base/DefaultPoller.java b/src/com/google/android/droiddriver/base/DefaultPoller.java
index c6d69c5..d4d178b 100644
--- a/src/com/google/android/droiddriver/base/DefaultPoller.java
+++ b/src/com/google/android/droiddriver/base/DefaultPoller.java
@@ -20,6 +20,7 @@ import android.os.SystemClock;
import com.google.android.droiddriver.DroidDriver;
import com.google.android.droiddriver.Poller;
+import com.google.android.droiddriver.exceptions.NoRunningActivityException;
import com.google.android.droiddriver.exceptions.TimeoutException;
import com.google.android.droiddriver.finders.Finder;
@@ -66,9 +67,16 @@ public class DefaultPoller implements Poller {
long end = SystemClock.uptimeMillis() + timeoutMillis;
while (true) {
try {
- driver.refreshUiElementTree();
+ try {
+ driver.refreshUiElementTree();
+ } catch (NoRunningActivityException nrae) {
+ if (checker == GONE) {
+ return null;
+ }
+ throw nrae;
+ }
return checker.check(driver, finder);
- } catch (UnsatisfiedConditionException e) {
+ } catch (UnsatisfiedConditionException uce) {
// fall through to poll
}