diff options
| author | Hugo Benichi <hugobenichi@google.com> | 2017-03-02 08:08:01 +0000 |
|---|---|---|
| committer | android-build-merger <android-build-merger@google.com> | 2017-03-02 08:08:01 +0000 |
| commit | 974e83cc0b8947e645770acdc4ae356bf06b713a (patch) | |
| tree | 84bd2149c2253b9f265f06aa01a37d0ce21ae1ed /core/java/android | |
| parent | b5d25274d7bbe08aa4b2cc253428bda2dff854bc (diff) | |
| parent | 5983a772cbe08441e4eb1337fb3afa7267e9dfa5 (diff) | |
Merge "ConnectivityManager: no double NetworkCallback registration" am: 06a192fa49
am: 5983a772cb
Change-Id: Ic36fbd67d92df0d9f70fe26d6aee92ee782bfb3c
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/net/ConnectivityManager.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/core/java/android/net/ConnectivityManager.java b/core/java/android/net/ConnectivityManager.java index 0cef2801d4dc..73f281d03630 100644 --- a/core/java/android/net/ConnectivityManager.java +++ b/core/java/android/net/ConnectivityManager.java @@ -2891,11 +2891,14 @@ public class ConnectivityManager { if (callback == null) { throw new IllegalArgumentException("null NetworkCallback"); } - if (need == null && action != REQUEST) { + if ((need == null) && (action != REQUEST)) { throw new IllegalArgumentException("null NetworkCapabilities"); } - // TODO: throw an exception if callback.networkRequest is not null. - // http://b/20701525 + final int targetSdk = mContext.getApplicationInfo().targetSdkVersion; + if ((targetSdk > VERSION_CODES.N_MR1) && (callback.networkRequest != null)) { + // http://b/20701525 + throw new IllegalArgumentException("NetworkCallback already registered"); + } final NetworkRequest request; try { synchronized(sCallbacks) { |
