In isMobileOk don't execute finally if mobile data is not supported.

Move the early return outside the try {} finally so we don't call
setEnableFailFastMobileData(DctContants.DISABLED). Otherwise
referencing counting is wrong and an exception is thrown in DcTrackerBase.

Bug: 10304904
Change-Id: I5ba5121e473bada9f3daa8d6f3d3577cec8212fc
This commit is contained in:
Wink Saville
2013-08-13 12:41:06 -07:00
parent 1c2cb6533b
commit e63411f28b

View File

@ -3732,13 +3732,13 @@ public class ConnectivityService extends IConnectivityManager.Stub {
Random rand = new Random();
mParams = params;
try {
if (mCs.isNetworkSupported(ConnectivityManager.TYPE_MOBILE) == false) {
log("isMobileOk: not mobile capable");
result = ConnectivityManager.CMP_RESULT_CODE_NO_CONNECTION;
return result;
}
if (mCs.isNetworkSupported(ConnectivityManager.TYPE_MOBILE) == false) {
log("isMobileOk: not mobile capable");
result = ConnectivityManager.CMP_RESULT_CODE_NO_CONNECTION;
return result;
}
try {
// Enable fail fast as we'll do retries here and use a
// hipri connection so the default connection stays active.
log("isMobileOk: start hipri url=" + params.mUrl);