diff options
Diffstat (limited to 'src/restore.c')
-rw-r--r-- | src/restore.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/restore.c b/src/restore.c index f0e79c6..676d449 100644 --- a/src/restore.c +++ b/src/restore.c @@ -522,14 +522,22 @@ int restore_handle_status_msg(restored_client_t client, plist_t msg) { break; case 6: info("Status: Disk Failure\n"); - result = -1; break; case 14: info("Status: Fail\n"); - result = -1; + break; + case 1015: + info("Status: X-Gold Baseband Update Failed. Defective Unit?\n"); break; default: info("Unhandled status message (" FMT_qu ")\n", (long long unsigned int)value); + break; + } + + node = plist_dict_get_item(msg, "AMRError"); + if (node && plist_get_node_type(node) == PLIST_UINT) { + plist_get_uint_val(node, &value); + result = -value; } return result; |