Don't set RSSI to -1 when no value is returned

Bug: 19928834
Change-Id: I25eebee0dcd01f7e8ea2791ccdcc75cd1066f3c0
diff --git a/service/java/com/android/server/wifi/WifiStateMachine.java b/service/java/com/android/server/wifi/WifiStateMachine.java
index 67b580e..d85da64 100644
--- a/service/java/com/android/server/wifi/WifiStateMachine.java
+++ b/service/java/com/android/server/wifi/WifiStateMachine.java
@@ -4073,9 +4073,9 @@
      * Fetch RSSI, linkspeed, and frequency on current connection
      */
     private void fetchRssiLinkSpeedAndFrequencyNative() {
-        int newRssi = -1;
-        int newLinkSpeed = -1;
-        int newFrequency = -1;
+        Integer newRssi = null;
+        Integer newLinkSpeed = null;
+        Integer newFrequency = null;
 
         String signalPoll = mWifiNative.signalPoll();
 
@@ -4099,12 +4099,11 @@
         }
 
         if (PDBG) {
-            logd("fetchRssiLinkSpeedAndFrequencyNative rssi="
-                    + Integer.toString(newRssi) + " linkspeed="
-                    + Integer.toString(newLinkSpeed));
+            logd("fetchRssiLinkSpeedAndFrequencyNative rssi=" + newRssi +
+                 " linkspeed=" + newLinkSpeed + " freq=" + newFrequency);
         }
 
-        if (newRssi > WifiInfo.INVALID_RSSI && newRssi < WifiInfo.MAX_RSSI) {
+        if (newRssi != null && newRssi > WifiInfo.INVALID_RSSI && newRssi < WifiInfo.MAX_RSSI) {
             // screen out invalid values
             /* some implementations avoid negative values by adding 256
              * so we need to adjust for that here.
@@ -4132,10 +4131,10 @@
             updateCapabilities(getCurrentWifiConfiguration());
         }
 
-        if (newLinkSpeed != -1) {
+        if (newLinkSpeed != null) {
             mWifiInfo.setLinkSpeed(newLinkSpeed);
         }
-        if (newFrequency > 0) {
+        if (newFrequency != null && newFrequency > 0) {
             if (ScanResult.is5GHz(newFrequency)) {
                 mWifiConnectionStatistics.num5GhzConnected++;
             }