File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -215,7 +215,10 @@ extension NSData {
215
215
if fd < 0 {
216
216
throw NSError ( domain: NSPOSIXErrorDomain, code: Int ( errno) , userInfo: nil )
217
217
}
218
-
218
+ defer {
219
+ close ( fd)
220
+ }
221
+
219
222
var info = stat ( )
220
223
let ret = withUnsafeMutablePointer ( & info) { infoPointer -> Bool in
221
224
if fstat ( fd, infoPointer) < 0 {
@@ -225,7 +228,6 @@ extension NSData {
225
228
}
226
229
227
230
if !ret {
228
- close ( fd)
229
231
throw NSError ( domain: NSPOSIXErrorDomain, code: Int ( errno) , userInfo: nil )
230
232
}
231
233
@@ -236,7 +238,6 @@ extension NSData {
236
238
237
239
// Swift does not currently expose MAP_FAILURE
238
240
if data != UnsafeMutablePointer< Void> ( bitPattern: - 1 ) {
239
- close ( fd)
240
241
return NSDataReadResult ( bytes: data, length: length) { buffer, length in
241
242
munmap ( data, length)
242
243
}
@@ -256,7 +257,6 @@ extension NSData {
256
257
total += amt
257
258
}
258
259
259
- close ( fd)
260
260
if remaining != 0 {
261
261
throw NSError ( domain: NSPOSIXErrorDomain, code: Int ( errno) , userInfo: nil )
262
262
}
You can’t perform that action at this time.
0 commit comments