Handle closed socket and NPE properly am: 8f4adaedaf

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2745875

Change-Id: Ie1b5efb699c37314394f85ca04696f748343361f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/service-t/src/com/android/server/connectivity/mdns/MdnsSocket.java b/service-t/src/com/android/server/connectivity/mdns/MdnsSocket.java
index d690032..c51811b 100644
--- a/service-t/src/com/android/server/connectivity/mdns/MdnsSocket.java
+++ b/service-t/src/com/android/server/connectivity/mdns/MdnsSocket.java
@@ -128,9 +128,13 @@
      * cannot be determined, returns -1.
      */
     public int getInterfaceIndex() {
+        if (multicastSocket.isClosed()) {
+            sharedLog.e("Socket is closed");
+            return -1;
+        }
         try {
             return multicastSocket.getNetworkInterface().getIndex();
-        } catch (SocketException e) {
+        } catch (SocketException | NullPointerException e) {
             sharedLog.e("Failed to retrieve interface index for socket.", e);
             return -1;
         }