ReactiveCocoa/ReactiveCocoa — pull request #738 by js (2013-08-05 17:40:55+00:00)
Title: nil out the previous backtrace when a backtrace is deallocated

This fixes #726

I was able to boil it down to the following sample:
```
NSMutableArray *a = [NSMutableArray array];
for (NSUInteger i = 0; i < 5000; i++) {
[a addObject:@(i)];
}

[[a.rac_sequence signalWithScheduler:[RACScheduler scheduler]]
subscribeNext:^(id x) {

} completed:^{
NSLog(@"Great success");
}];
```

Which will cause the crash mentioned in #726 once it completes, even with the proper DYLD_INSERT_LIBRARIES set, contrary to what I said in that ticket.

Now, I'm not 100% sure what's actually causing this but I'm seeing in both the xcode4&5 compiler versions and I think it may be related to when the queue specific context calls its deallocator and when ARC does its thing. Because if I introduce a leak by removing the deallocator argument to ´dispatch_set_specific` in `RACBacktraceBlock` (and without the patch below) the crash doesn't occur. Also interestingly I wasn't able to create a sample app that crashes by just calling the `rac_dispatch_async()` function directly, it has to be wrapped in something like the above sequence signal.

Would love to hear someone else's take on this