diff options
author | NicoleYarroch <nicole@livio.io> | 2020-06-12 13:57:12 -0400 |
---|---|---|
committer | NicoleYarroch <nicole@livio.io> | 2020-06-12 13:57:12 -0400 |
commit | 0a23aeb76efa6ab79d80427cccbfc05838e94b0a (patch) | |
tree | 0958d778ce86d0d12845e790a1953367ae134c5d | |
parent | 956892c6dd0988db764c3a7b6d895de468a3c385 (diff) | |
download | sdl_ios-0a23aeb76efa6ab79d80427cccbfc05838e94b0a.tar.gz |
Fixed weak/strong self
Signed-off-by: NicoleYarroch <nicole@livio.io>
-rw-r--r-- | SmartDeviceLink/SDLStreamingVideoLifecycleManager.m | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/SmartDeviceLink/SDLStreamingVideoLifecycleManager.m b/SmartDeviceLink/SDLStreamingVideoLifecycleManager.m index ddee38a90..168ddf3e3 100644 --- a/SmartDeviceLink/SDLStreamingVideoLifecycleManager.m +++ b/SmartDeviceLink/SDLStreamingVideoLifecycleManager.m @@ -474,16 +474,18 @@ typedef void(^SDLVideoCapabilityResponseHandler)(SDLVideoStreamingCapability *_N } if (self.useDisplayLink) { + __weak typeof(self) weakSelf = self; dispatch_async(dispatch_get_main_queue(), ^{ - NSInteger targetFramerate = ((NSNumber *)self.videoEncoderSettings[(__bridge NSString *)kVTCompressionPropertyKey_ExpectedFrameRate]).integerValue; + __strong typeof(weakSelf) strongSelf = weakSelf; + NSInteger targetFramerate = ((NSNumber *)strongSelf.videoEncoderSettings[(__bridge NSString *)kVTCompressionPropertyKey_ExpectedFrameRate]).integerValue; SDLLogD(@"Initializing CADisplayLink with framerate: %ld", (long)targetFramerate); - self.displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(sdl_displayLinkFired:)]; + strongSelf.displayLink = [CADisplayLink displayLinkWithTarget:strongSelf selector:@selector(sdl_displayLinkFired:)]; if (@available(iOS 10, *)) { - self.displayLink.preferredFramesPerSecond = targetFramerate; + strongSelf.displayLink.preferredFramesPerSecond = targetFramerate; } else { - self.displayLink.frameInterval = (60 / targetFramerate); + strongSelf.displayLink.frameInterval = (60 / targetFramerate); } - [self.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes]; + [strongSelf.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes]; }); } else { self.touchManager.enableSyncedPanning = NO; |