diff --git a/MAFuture.m b/MAFuture.m index 01c39fc..0647793 100644 --- a/MAFuture.m +++ b/MAFuture.m @@ -161,7 +161,6 @@ - (id)resolveFuture if(![self futureHasResolved]) { [self setFutureValueUnlocked: _block()]; - [self setIsObservingUnlocked:YES]; } [_lock unlock]; return _value; @@ -180,7 +179,9 @@ - (void)memoryWarningHandler { #undef IKMemoryAwareFutureCreate id IKMemoryAwareFutureCreate(id (^block)(void)) { - return [[_IKMemoryAwareFuture alloc] initWithBlock:block]; + id value = [[_IKMemoryAwareFuture alloc] initWithBlock:block]; + [value setIsObservingUnlocked:YES]; + return value; } #undef IKMemoryAwareFuture