[NS A30] Note linger out of the rematch loop

This doesn't have to be tested every time.

Test: FrameworksNetTests
Change-Id: Ic5702c8b4bd096860fe55c4d9e4c465703561911
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index 461c3ad..9b0be06 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -6573,11 +6573,6 @@
                 // network.  Think about if there is a way to reduce this.  Push
                 // netid->request mapping to each provider?
                 sendUpdatedScoreToFactories(nri.request, newSatisfier);
-                if (isDefaultRequest(nri)) {
-                    if (previousSatisfier != null) {
-                        mLingerMonitor.noteLingerDefaultNetwork(previousSatisfier, newSatisfier);
-                    }
-                }
             } else {
                 // If "newNetwork" is listed as satisfying "nri" but no longer satisfies "nri",
                 // mark it as no longer satisfying "nri".  Because networks are processed by
@@ -6633,6 +6628,9 @@
                 changes.getNewSatisfier(defaultRequestInfo), oldDefaultNetwork);
 
         if (oldDefaultNetwork != newDefaultNetwork) {
+            if (oldDefaultNetwork != null) {
+                mLingerMonitor.noteLingerDefaultNetwork(oldDefaultNetwork, newDefaultNetwork);
+            }
             updateDataActivityTracking(newDefaultNetwork, oldDefaultNetwork);
             // Notify system services that this network is up.
             makeDefault(newDefaultNetwork);