From e0d07d07ef9910e1eda22164518bb61217fc151d Mon Sep 17 00:00:00 2001 From: Huy Nguyen Date: Fri, 9 Mar 2018 22:23:41 +0000 Subject: [PATCH] ASTextNode should avoid acquiring its lock multiple times #trivial (#820) Since the lock was acquire before we try to access the renderer, we should call `-_locked_renderer` to avoid re-acquiring the same (recursive) lock. --- Source/ASTextNode.mm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/ASTextNode.mm b/Source/ASTextNode.mm index 522ebabedd..ccbed9c078 100644 --- a/Source/ASTextNode.mm +++ b/Source/ASTextNode.mm @@ -769,7 +769,7 @@ static NSArray *DefaultLinkAttributeNames = @[ NSLinkAttributeName ]; if (highlightTargetLayer != nil) { ASDN::MutexLocker l(__instanceLock__); - ASTextKitRenderer *renderer = [self _renderer]; + ASTextKitRenderer *renderer = [self _locked_renderer]; NSArray *highlightRects = [renderer rectsForTextRange:highlightRange measureOption:ASTextKitRendererMeasureOptionBlock]; NSMutableArray *converted = [NSMutableArray arrayWithCapacity:highlightRects.count];