Skip to content

Commit 48281e2

Browse files
committed
Retain products request robotmedia#229
If not retained, on tvOS will be always released and the delegate won't be called.
1 parent 91cc3c8 commit 48281e2

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

RMStore/RMStore.m

+3-1
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ @interface RMProductsRequestDelegate : NSObject<SKProductsRequestDelegate>
111111
@property (nonatomic, copy) RMSKProductsRequestSuccessBlock successBlock;
112112
@property (nonatomic, copy) RMSKProductsRequestFailureBlock failureBlock;
113113
@property (nonatomic, weak) RMStore *store;
114+
@property (nonatomic, strong) SKProductsRequest *productsRequest;
114115

115116
@end
116117

@@ -253,7 +254,7 @@ - (void)requestProducts:(NSSet*)identifiers
253254

254255
SKProductsRequest *productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:identifiers];
255256
productsRequest.delegate = delegate;
256-
257+
delegate.productsRequest = productsRequest;
257258
[productsRequest start];
258259
}
259260

@@ -787,6 +788,7 @@ - (void)postNotificationWithName:(NSString*)notificationName transaction:(SKPaym
787788

788789
- (void)removeProductsRequestDelegate:(RMProductsRequestDelegate*)delegate
789790
{
791+
delegate.productsRequest = nil;
790792
[_productsRequestDelegates removeObject:delegate];
791793
}
792794

0 commit comments

Comments
 (0)