@@ -160,21 +160,21 @@ + (void)qmuisafety_NSString {
160160
161161 // index 越界
162162 {
163- BOOL isValidddatedIndex = index <= selfObject.length ;
164- if (!isValidddatedIndex ) {
163+ BOOL isValidatedIndex = index <= selfObject.length ;
164+ if (!isValidatedIndex ) {
165165 NSString *logString = [NSString stringWithFormat: @" %@ 传入了一个超过字符串长度的 index: %@ ,原字符串为: %@ (%@ )" , NSStringFromSelector (originCMD), @(index), selfObject, @(selfObject.length)];
166166 NSAssert (NO , logString);
167167 QMUILogWarn (@" QMUIStringSafety" , @" %@ " , logString);
168- return nil ;// 系统 substringFromIndex: 返回值的标志是 nonnull,但返回 nil 比返回 @"" 更安全
168+ return @" " ;// 系统 substringFromIndex: 返回值的标志是 nonnull
169169 }
170170 }
171171
172172 // 保护从 emoji 等 ComposedCharacterSequence 中间裁剪的场景
173173 {
174174 if (index < selfObject.length ) {
175175 NSRange range = [selfObject rangeOfComposedCharacterSequenceAtIndex: index];
176- BOOL isValidddatedIndex = range.location == index || NSMaxRange (range) == index;
177- if (!isValidddatedIndex ) {
176+ BOOL isValidatedIndex = range.location == index || NSMaxRange (range) == index;
177+ if (!isValidatedIndex ) {
178178 NSString *logString = [NSString stringWithFormat: @" 试图在 ComposedCharacterSequence 中间用 %@ 裁剪字符串,可能导致乱码、crash。原字符串为“%@ ”(%@ ),index 为 %@ ,命中的 ComposedCharacterSequence range 为 %@ " , NSStringFromSelector (originCMD), selfObject, @(selfObject.length), @(index), NSStringFromRange (range)];
179179 NSAssert (NO , logString);
180180 QMUILogWarn (@" QMUIStringSafety" , @" %@ " , logString);
@@ -197,21 +197,21 @@ + (void)qmuisafety_NSString {
197197
198198 // index 越界
199199 {
200- BOOL isValidddatedIndex = index <= selfObject.length ;
201- if (!isValidddatedIndex ) {
200+ BOOL isValidatedIndex = index <= selfObject.length ;
201+ if (!isValidatedIndex ) {
202202 NSString *logString = [NSString stringWithFormat: @" %@ 传入了一个超过字符串长度的 index: %@ ,原字符串为: %@ (%@ )" , NSStringFromSelector (originCMD), @(index), selfObject, @(selfObject.length)];
203203 NSAssert (NO , logString);
204204 QMUILogWarn (@" QMUIStringSafety" , @" %@ " , logString);
205- return nil ;// 系统 substringToIndex: 返回值的标志是 nonnull,但返回 nil 比返回 @"" 更安全
205+ return @" " ;// 系统 substringToIndex: 返回值的标志是 nonnull,但返回 nil 比返回 @"" 更安全
206206 }
207207 }
208208
209209 // 保护从 emoji 等 ComposedCharacterSequence 中间裁剪的场景
210210 {
211211 if (index < selfObject.length ) {
212212 NSRange range = [selfObject rangeOfComposedCharacterSequenceAtIndex: index];
213- BOOL isValidddatedIndex = range.location == index;
214- if (!isValidddatedIndex ) {
213+ BOOL isValidatedIndex = range.location == index;
214+ if (!isValidatedIndex ) {
215215 NSString *logString = [NSString stringWithFormat: @" 试图在 ComposedCharacterSequence 中间用 %@ 裁剪字符串,可能导致乱码、crash。原字符串为“%@ ”(%@ ),index 为 %@ ,命中的 ComposedCharacterSequence range 为 %@ " , NSStringFromSelector (originCMD), selfObject, @(selfObject.length), @(index), NSStringFromRange (range)];
216216 NSAssert (NO , logString);
217217 QMUILogWarn (@" QMUIStringSafety" , @" %@ " , logString);
@@ -240,7 +240,7 @@ + (void)qmuisafety_NSString {
240240 NSString *logString = [NSString stringWithFormat: @" %@ 传入了一个超过字符串长度的 range: %@ ,原字符串为: %@ (%@ )" , NSStringFromSelector (originCMD), NSStringFromRange (range), selfObject, @(selfObject.length)];
241241 NSAssert (NO , logString);
242242 QMUILogWarn (@" QMUIStringSafety" , @" %@ " , logString);
243- return nil ;// 系统 substringWithRange: 返回值的标志是 nonnull,但返回 nil 比返回 @"" 更安全
243+ return @" " ;// 系统 substringWithRange: 返回值的标志是 nonnull
244244 }
245245 }
246246
0 commit comments