am 7081a5d1: Merge "Correctly iterate through MediaProjection callbacks." into lmp-mr1-dev

* commit '7081a5d1ae6b9fe5d92dca25a85524c2c2421e1e':
  Correctly iterate through MediaProjection callbacks.
This commit is contained in:
Michael Wright
2014-12-03 02:18:19 +00:00
committed by Android Git Automerger

View File

@@ -76,6 +76,9 @@ public final class MediaProjection {
if (callback == null) {
throw new IllegalArgumentException("callback should not be null");
}
if (handler == null) {
handler = new Handler();
}
mCallbacks.put(callback, new CallbackRecord(callback, handler));
}
@@ -182,16 +185,15 @@ public final class MediaProjection {
private final class MediaProjectionCallback extends IMediaProjectionCallback.Stub {
@Override
public void onStop() {
final int N = mCallbacks.size();
for (int i = 0; i < N; i++) {
mCallbacks.get(i).onStop();
for (CallbackRecord cbr : mCallbacks.values()) {
cbr.onStop();
}
}
}
private final static class CallbackRecord {
private Callback mCallback;
private Handler mHandler;
private final Callback mCallback;
private final Handler mHandler;
public CallbackRecord(Callback callback, Handler handler) {
mCallback = callback;