Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit decca623 authored by Benedict Wong's avatar Benedict Wong
Browse files

Add null pointer check for mConfig in onSessionLost

Bug: 185291618
Test: atest VpnTest
Test: atest Ikev2VpnTest
Change-Id: I492e72b5cc0d4ef9d36910af2d64b0c7eb34d202
parent 7cd588e2
Loading
Loading
Loading
Loading
+13 −11
Original line number Diff line number Diff line
@@ -2696,22 +2696,24 @@ public class Vpn {
                // prevent the NetworkManagementEventObserver from killing this VPN based on the
                // interface going down (which we expect).
                mInterface = null;
                if (mConfig != null) {
                    mConfig.interfaze = null;

                    // Set as unroutable to prevent traffic leaking while the interface is down.
                if (mConfig != null && mConfig.routes != null) {
                    if (mConfig.routes != null) {
                        final List<RouteInfo> oldRoutes = new ArrayList<>(mConfig.routes);

                        mConfig.routes.clear();
                        for (final RouteInfo route : oldRoutes) {
                        mConfig.routes.add(new RouteInfo(route.getDestination(), null /*gateway*/,
                                null /*iface*/, RTN_UNREACHABLE));
                            mConfig.routes.add(new RouteInfo(route.getDestination(),
                                    null /*gateway*/, null /*iface*/, RTN_UNREACHABLE));
                        }
                        if (mNetworkAgent != null) {
                            mNetworkAgent.sendLinkProperties(makeLinkProperties());
                        }
                    }
                }
            }

            resetIkeState();
        }