Merge "Fix native crash" into jb-mr1-dev
diff --git a/wifi/wifi.c b/wifi/wifi.c
index cd9bf65..f669693 100644
--- a/wifi/wifi.c
+++ b/wifi/wifi.c
@@ -727,10 +727,10 @@
     }
     if (rfds[0].revents & POLLIN) {
         return wpa_ctrl_recv(monitor_conn[index], reply, reply_len);
-    } else {
-        return -2;
+    } else if (rfds[1].revents & POLLIN) {
+        wifi_close_sockets(index);
     }
-    return 0;
+    return -2;
 }
 
 int wifi_wait_on_socket(int index, char *buf, size_t buflen)
@@ -837,9 +837,9 @@
          * STA connection does not need it since supplicant gets shutdown
          */
         TEMP_FAILURE_RETRY(write(exit_sockets[SECONDARY][0], "T", 1));
-        wifi_close_sockets(SECONDARY);
-        //closing p2p connection does not need a wait on
-        //supplicant stop
+        /* p2p sockets are closed after the monitor thread
+         * receives the terminate on the exit socket
+         */
         return;
     }