summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Luis Duran2019-01-16 04:56:22 +0100
committerGravatar Nikias Bassen2019-01-16 04:56:22 +0100
commit661efc8f3a724fdd38174f3a886fd3aeb26fde37 (patch)
tree78a4ccc08004fa7db0f22c89a8fa7aa5bcae63ed
parent5d95b2ceabe9108a197db43224fb1a497239829a (diff)
downloadidevicerestore-661efc8f3a724fdd38174f3a886fd3aeb26fde37.tar.gz
idevicerestore-661efc8f3a724fdd38174f3a886fd3aeb26fde37.tar.bz2
restore: Add TZ0RequiredCapacity to restore options to fix iPhone8/8+ boot loop issue
-rw-r--r--src/restore.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/restore.c b/src/restore.c
index 5e5bcec..6652aa0 100644
--- a/src/restore.c
+++ b/src/restore.c
@@ -2479,6 +2479,20 @@ int restore_device(struct idevicerestore_client_t* client, plist_t build_identit
}
// FIXME: does this have any effect actually?
plist_dict_set_item(opts, "UpdateBaseband", plist_new_bool(0));
+
+ plist_t sep = plist_access_path(build_identity, 3, "Manifest", "SEP", "Info");
+ if (sep) {
+ node = plist_dict_get_item(sep, "RequiredCapacity");
+ if (node && plist_get_node_type(node) == PLIST_STRING) {
+ char* sval = NULL;
+ plist_get_string_val(node, &sval);
+ debug("TZ0RequiredCapacity: %s\n", sval);
+ plist_dict_set_item(opts, "TZ0RequiredCapacity", plist_copy(node));
+ free(sval);
+ sval = NULL;
+ }
+ }
+
// FIXME: not required for iOS 5?
//plist_dict_set_item(opts, "UserLocale", plist_new_string("en_US"));