Disable ADB tunnel in SSH mode.

This commit is contained in:
Vladimir Chebotarev 2020-09-06 16:23:47 +03:00
commit 3bdd6acb53

View file

@ -394,7 +394,7 @@ server_start(struct server *server, const char *serial,
goto error1; goto error1;
} }
if (!enable_tunnel_any_port(server, params->port_range, if (!params->use_ssh && !enable_tunnel_any_port(server, params->port_range,
params->force_adb_forward)) { params->force_adb_forward)) {
goto error1; goto error1;
} }
@ -419,20 +419,23 @@ server_start(struct server *server, const char *serial,
goto error2; goto error2;
} }
server->tunnel_enabled = true; if (!params->use_ssh)
server->tunnel_enabled = true;
return true; return true;
error2: error2:
if (!server->tunnel_forward) { if (!params->use_ssh) {
bool was_closed = if (!server->tunnel_forward) {
atomic_flag_test_and_set(&server->server_socket_closed); bool was_closed =
// the thread is not started, the flag could not be already set atomic_flag_test_and_set(&server->server_socket_closed);
assert(!was_closed); // the thread is not started, the flag could not be already set
(void) was_closed; assert(!was_closed);
close_socket(server->server_socket); (void) was_closed;
close_socket(server->server_socket);
}
disable_tunnel(server);
} }
disable_tunnel(server);
error1: error1:
SDL_free(server->serial); SDL_free(server->serial);
return false; return false;
@ -475,9 +478,11 @@ server_connect_to(struct server *server) {
} }
} }
// we don't need the adb tunnel anymore if (server->tunnel_enabled) {
disable_tunnel(server); // ignore failure // we don't need the adb tunnel anymore
server->tunnel_enabled = false; disable_tunnel(server); // ignore failure
server->tunnel_enabled = false;
}
return true; return true;
} }