am 774abe7b: Cherry-pick 49f1857d from master. do not merge.
* commit '774abe7b7e463436107545250aa573c99e246a86':
Cherry-pick 49f1857d from master. do not merge.
diff --git a/adb/sockets.c b/adb/sockets.c
index 43925e4..e3cea35 100644
--- a/adb/sockets.c
+++ b/adb/sockets.c
@@ -221,10 +221,12 @@
if(s->peer) {
s->peer->peer = 0;
// tweak to avoid deadlock
- if (s->peer->close == local_socket_close)
+ if (s->peer->close == local_socket_close) {
local_socket_close_locked(s->peer);
- else
+ } else {
s->peer->close(s->peer);
+ }
+ s->peer = 0;
}
/* If we are already closing, or if there are no
@@ -756,6 +758,7 @@
if(s->peer) {
s->peer->peer = 0;
s->peer->close(s->peer);
+ s->peer = 0;
}
free(s);
}