summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGravatar Nikias Bassen2024-09-25 02:46:07 +0200
committerGravatar Nikias Bassen2024-09-25 02:46:07 +0200
commit27402caabadfe0d5114a8999bdae413202f3d19c (patch)
treea8eabb7a5df6103f89253e5770bc4c0c75be9153 /src
parentbe6751c2cb7d63cee43a11cf93ee4a23cca699cb (diff)
downloadidevicerestore-27402caabadfe0d5114a8999bdae413202f3d19c.tar.gz
idevicerestore-27402caabadfe0d5114a8999bdae413202f3d19c.tar.bz2
Release DFU/Recovery client on disconnect and Increase timeout for port DFU -> KIS
Diffstat (limited to 'src')
-rw-r--r--src/idevicerestore.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/idevicerestore.c b/src/idevicerestore.c
index 2dd7eb8..bf58a3e 100644
--- a/src/idevicerestore.c
+++ b/src/idevicerestore.c
@@ -817,8 +817,9 @@ int idevicerestore_start(struct idevicerestore_client_t* client)
}
return -2;
}
+ dfu_client_free(client);
debug("Waiting for device to reconnect in DFU mode...\n");
- cond_wait_timeout(&client->device_event_cond, &client->device_event_mutex, 5000);
+ cond_wait_timeout(&client->device_event_cond, &client->device_event_mutex, 20000);
if (client->mode != MODE_DFU || (client->flags & FLAG_QUIT)) {
mutex_unlock(&client->device_event_mutex);
if (!(client->flags & FLAG_QUIT)) {
@@ -1416,6 +1417,7 @@ int idevicerestore_start(struct idevicerestore_client_t* client)
}
return -2;
}
+ recovery_client_free(client);
debug("Waiting for device to reconnect in recovery mode...\n");
cond_wait_timeout(&client->device_event_cond, &client->device_event_mutex, 60000);
if (client->mode != MODE_RECOVERY || (client->flags & FLAG_QUIT)) {