diff --git a/AltServer/Devices/ALTDeviceManager.mm b/AltServer/Devices/ALTDeviceManager.mm index 2e088d7b..c1aea676 100644 --- a/AltServer/Devices/ALTDeviceManager.mm +++ b/AltServer/Devices/ALTDeviceManager.mm @@ -95,12 +95,12 @@ NSErrorDomain const ALTDeviceErrorDomain = @"com.rileytestut.ALTDeviceError"; if (misagent_install(mis, pdata) == MISAGENT_E_SUCCESS) { - NSLog(@"Reinstalled profile: %@", provisioningProfile.identifier); + NSLog(@"Reinstalled profile: %@", provisioningProfile.UUID); } else { int code = misagent_get_status_code(mis); - NSLog(@"Failed to reinstall provisioning profile %@. (%@)", provisioningProfile.identifier, @(code)); + NSLog(@"Failed to reinstall provisioning profile %@. (%@)", provisioningProfile.UUID, @(code)); } } @@ -315,14 +315,14 @@ NSErrorDomain const ALTDeviceErrorDomain = @"com.rileytestut.ALTDeviceError"; continue; } - if (misagent_remove(mis, provisioningProfile.identifier.UTF8String) == MISAGENT_E_SUCCESS) + if (misagent_remove(mis, provisioningProfile.UUID.UUIDString.lowercaseString.UTF8String) == MISAGENT_E_SUCCESS) { - NSLog(@"Removed provisioning profile: %@", provisioningProfile.identifier); + NSLog(@"Removed provisioning profile: %@", provisioningProfile.UUID); } else { int code = misagent_get_status_code(mis); - NSLog(@"Failed to remove provisioning profile %@. Error Code: %@", provisioningProfile.identifier, @(code)); + NSLog(@"Failed to remove provisioning profile %@. Error Code: %@", provisioningProfile.UUID, @(code)); } } diff --git a/AltStore/Operations/ResignAppOperation.swift b/AltStore/Operations/ResignAppOperation.swift index d7897637..03ee2bf8 100644 --- a/AltStore/Operations/ResignAppOperation.swift +++ b/AltStore/Operations/ResignAppOperation.swift @@ -203,7 +203,25 @@ private extension ResignAppOperation func fetchProvisioningProfile(for appID: ALTAppID, team: ALTTeam, completionHandler: @escaping (Result) -> Void) { ALTAppleAPI.shared.fetchProvisioningProfile(for: appID, team: team) { (profile, error) in - completionHandler(Result(profile, error)) + switch Result(profile, error) + { + case .failure(let error): completionHandler(.failure(error)) + case .success(let profile): + + // Delete existing profile + ALTAppleAPI.shared.delete(profile, for: team) { (success, error) in + switch Result(success, error) + { + case .failure(let error): completionHandler(.failure(error)) + case .success: + + // Fetch new provisiong profile + ALTAppleAPI.shared.fetchProvisioningProfile(for: appID, team: team) { (profile, error) in + completionHandler(Result(profile, error)) + } + } + } + } } } diff --git a/Dependencies/AltSign b/Dependencies/AltSign index ae919bed..17cc07d3 160000 --- a/Dependencies/AltSign +++ b/Dependencies/AltSign @@ -1 +1 @@ -Subproject commit ae919bedd259d65584d54fc6861b1cb5261cad8f +Subproject commit 17cc07d3b324aa1891bb32ebe5ffc836d3094dc5