Skip to content

Commit d433e02

Browse files
committed
fix pointer free issue
1 parent 08fe15e commit d433e02

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

Sources/IdeviceGateway.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1851,7 +1851,7 @@ internal final class IdeviceGateway {
18511851
try performWithEitherService(
18521852
connectRP: house_arrest_client_connect_rsd,
18531853
connectLockdown: house_arrest_client_connect,
1854-
cleanup: house_arrest_client_free,
1854+
cleanup: { _ in }, // no need to free, house_arrest takes ownership of the pointer
18551855
serviceName: "house_arrest"
18561856
) { client in
18571857
verboseLog("[IdeviceGateway] startHouseArrestAfc() calling house_arrest_vend_container")
@@ -1860,7 +1860,7 @@ internal final class IdeviceGateway {
18601860
}
18611861
if let err = err {
18621862
debugLog("[IdeviceGateway] startHouseArrestAfc() house_arrest_vend_container failed")
1863-
defer { idevice_error_free(err) }
1863+
defer { safeFreeError(err) }
18641864
throw IdeviceGatewayError.serviceError("Failed to vend container for \(bundleId)")
18651865
}
18661866
debugLog("[IdeviceGateway] startHouseArrestAfc() house_arrest_vend_container succeeded")
@@ -1882,7 +1882,7 @@ internal final class IdeviceGateway {
18821882
}
18831883
if let err = err {
18841884
debugLog("[IdeviceGateway] afcListDirectory() afc_list_directory failed for: \(path)")
1885-
defer { idevice_error_free(err) }
1885+
defer { safeFreeError(err) }
18861886
throw IdeviceGatewayError.serviceError("Failed to list directory: \(path)")
18871887
}
18881888
var items: [String] = []
@@ -1907,7 +1907,7 @@ internal final class IdeviceGateway {
19071907
}
19081908
if let openErr = openErr {
19091909
debugLog("[IdeviceGateway] afcReadFile() afc_file_open failed for: \(path)")
1910-
defer { idevice_error_free(openErr) }
1910+
defer { safeFreeError(openErr) }
19111911
throw IdeviceGatewayError.serviceError("Failed to open file: \(path)")
19121912
}
19131913
defer {
@@ -1920,7 +1920,7 @@ internal final class IdeviceGateway {
19201920
let readErr = afc_file_read_entire(fileHandle, &dataPtr, &length)
19211921
if let readErr = readErr {
19221922
debugLog("[IdeviceGateway] afcReadFile() afc_file_read_entire failed")
1923-
defer { idevice_error_free(readErr) }
1923+
defer { safeFreeError(readErr) }
19241924
throw IdeviceGatewayError.serviceError("Failed to read file: \(path)")
19251925
}
19261926

@@ -1943,7 +1943,7 @@ internal final class IdeviceGateway {
19431943
}
19441944
if let err = err {
19451945
debugLog("[IdeviceGateway] afcGetFileInfo() afc_get_file_info failed for: \(path)")
1946-
defer { idevice_error_free(err) }
1946+
defer { safeFreeError(err) }
19471947
throw IdeviceGatewayError.serviceError("Failed to get info for path: \(path)")
19481948
}
19491949
defer {

0 commit comments

Comments
 (0)