NetworkAgent: Send primitive integer in score

|Integer| is not parcelable and hences crashes when the binder call
crosses a process boundary. Using a primitive integer should suffice
for sending the value to the server. There are no other usage of
|EVENT_NETWORK_SCORE_CHANGED| in the codebase.

Bug: 112358948
Test: Device boots up and able to make wifi connection.
Change-Id: I4c8fc17f4b803f69a4d882c71a8ce014a194d1ba
This commit is contained in:
Roshan Pius
2018-08-02 10:25:02 -07:00
parent dcabc027b3
commit d594290fd9
2 changed files with 2 additions and 3 deletions

View File

@@ -372,7 +372,7 @@ public abstract class NetworkAgent extends Handler {
if (score < 0) {
throw new IllegalArgumentException("Score must be >= 0");
}
queueOrSendMessage(EVENT_NETWORK_SCORE_CHANGED, new Integer(score));
queueOrSendMessage(EVENT_NETWORK_SCORE_CHANGED, score, 0);
}
/**

View File

@@ -2097,8 +2097,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
break;
}
case NetworkAgent.EVENT_NETWORK_SCORE_CHANGED: {
Integer score = (Integer) msg.obj;
if (score != null) updateNetworkScore(nai, score.intValue());
updateNetworkScore(nai, msg.arg1);
break;
}
case NetworkAgent.EVENT_SET_EXPLICITLY_SELECTED: {