Split networkDestroy() and destroyNetworkCache()
When an exception occurs while executing networkDestroy(),
destroyNetworkCache() is not executed and
destroyNativeNetwork() is terminated. Eventually,
this leads to the problem of netid not being properly organized.
It makes UE not able to send/receive MMS or use the internet until
rebooting.
Test: Build Pass, make force exception manually
Signed-off-by: Wangkeun Oh <wangkeun.oh@samsung.com>
Change-Id: I3dea967948ebda7b1c1f601c8ffa6e736b666c4c
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index d67850c..31cc86e 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -3531,6 +3531,10 @@
private void destroyNativeNetwork(@NonNull NetworkAgentInfo networkAgent) {
try {
mNetd.networkDestroy(networkAgent.network.getNetId());
+ } catch (RemoteException | ServiceSpecificException e) {
+ loge("Exception destroying network(networkDestroy): " + e);
+ }
+ try {
mDnsResolver.destroyNetworkCache(networkAgent.network.getNetId());
} catch (RemoteException | ServiceSpecificException e) {
loge("Exception destroying network: " + e);