Skip to content

Commit b96c19c

Browse files
committed
Use NSString methods due to iOS 17 crash.
1 parent 4d0522d commit b96c19c

File tree

1 file changed

+11
-19
lines changed

1 file changed

+11
-19
lines changed

Aztec/Classes/Extensions/NSAttributedString+ParagraphRange.swift

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,13 @@ extension NSAttributedString {
2222
///
2323
func paragraphRanges(intersecting range: NSRange, includeParagraphSeparator: Bool = true) -> [NSRange] {
2424
var paragraphRanges = [NSRange]()
25-
let swiftRange = string.range(fromUTF16NSRange: range)
26-
let paragraphsRange = string.paragraphRange(for: swiftRange)
27-
28-
string.enumerateSubstrings(in: paragraphsRange, options: .byParagraphs) { [unowned self] (substring, substringRange, enclosingRange, stop) in
25+
let paragraphsRange = foundationString.paragraphRange(for: range)
26+
27+
foundationString.enumerateSubstrings(in: paragraphsRange, options: .byParagraphs) { (substring, substringRange, enclosingRange, stop) in
2928
let paragraphRange = includeParagraphSeparator ? enclosingRange : substringRange
30-
paragraphRanges.append(self.string.utf16NSRange(from: paragraphRange))
29+
paragraphRanges.append(paragraphRange)
3130
}
32-
31+
3332
return paragraphRanges
3433
}
3534

@@ -44,16 +43,12 @@ extension NSAttributedString {
4443
///
4544
func paragraphRanges(intersecting range: NSRange) -> ([ParagraphRange]) {
4645
var paragraphRanges = [ParagraphRange]()
47-
let swiftRange = string.range(fromUTF16NSRange: range)
48-
let paragraphsRange = string.paragraphRange(for: swiftRange)
49-
50-
string.enumerateSubstrings(in: paragraphsRange, options: .byParagraphs) { [unowned self] (substring, substringRange, enclosingRange, stop) in
51-
let substringNSRange = self.string.utf16NSRange(from: substringRange)
52-
let enclosingNSRange = self.string.utf16NSRange(from: enclosingRange)
53-
54-
paragraphRanges.append((substringNSRange, enclosingNSRange))
46+
let paragraphsRange = foundationString.paragraphRange(for: range)
47+
48+
foundationString.enumerateSubstrings(in: paragraphsRange, options: .byParagraphs) { (substring, substringRange, enclosingRange, stop) in
49+
paragraphRanges.append((substringRange, enclosingRange))
5550
}
56-
51+
5752
return paragraphRanges
5853
}
5954

@@ -62,10 +57,7 @@ extension NSAttributedString {
6257
/// This is an attributed string wrapper for `NSString.paragraphRangeForRange()`
6358
///
6459
func paragraphRange(for range: NSRange) -> NSRange {
65-
let swiftRange = string.range(fromUTF16NSRange: range)
66-
let outRange = string.paragraphRange(for: swiftRange)
67-
68-
return string.utf16NSRange(from: outRange)
60+
return foundationString.paragraphRange(for: range)
6961
}
7062

7163
func paragraphRange(for attachment: NSTextAttachment) -> NSRange {

0 commit comments

Comments
 (0)