Skip to content

Commit bd5a965

Browse files
chrisamansekzaher
authored andcommitted
Fix memory leak of pthread_key_t pointer
1 parent 5588988 commit bd5a965

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

RxSwift/Schedulers/CurrentThreadScheduler.swift

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,11 @@ public class CurrentThreadScheduler : ImmediateSchedulerType {
5050

5151
private static var isScheduleRequiredKey: pthread_key_t = { () -> pthread_key_t in
5252
let key = UnsafeMutablePointer<pthread_key_t>.allocate(capacity: 1)
53-
if pthread_key_create(key, nil) != 0 {
53+
defer {
54+
key.deallocate(capacity: 1)
55+
}
56+
57+
guard pthread_key_create(key, nil) == 0 else {
5458
rxFatalError("isScheduleRequired key creation failed")
5559
}
5660

0 commit comments

Comments
 (0)