Index: talk/app/webrtc/java/android/org/webrtc/ThreadUtils.java |
diff --git a/talk/app/webrtc/java/android/org/webrtc/ThreadUtils.java b/talk/app/webrtc/java/android/org/webrtc/ThreadUtils.java |
index 33402f700ba014c6393c1ea708bd1e3a5616bc30..0d8968aba9e50c17070e9d629e978edc078cb295 100644 |
--- a/talk/app/webrtc/java/android/org/webrtc/ThreadUtils.java |
+++ b/talk/app/webrtc/java/android/org/webrtc/ThreadUtils.java |
@@ -126,4 +126,18 @@ final class ThreadUtils { |
awaitUninterruptibly(barrier); |
return result.value; |
} |
+ |
+ /** |
+ * Post |runner| to |handler| and wait for the result. |
+ */ |
+ public static void invokeUninterruptibly(final Handler handler, final Runnable runner) { |
+ final CountDownLatch barrier = new CountDownLatch(1); |
+ handler.post(new Runnable() { |
+ @Override public void run() { |
+ runner.run(); |
+ barrier.countDown(); |
+ } |
+ }); |
+ awaitUninterruptibly(barrier); |
+ } |
} |