Skip to content

Commit 137e54f

Browse files
author
molicechen
committed
4.4.2
1 parent 75aa32b commit 137e54f

File tree

2 files changed

+14
-12
lines changed

2 files changed

+14
-12
lines changed

QMUIKit/QMUIComponents/QMUIButton/QMUIButton.m

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,14 @@ @implementation QMUIButton
3131

3232
- (instancetype)initWithFrame:(CGRect)frame {
3333
if (self = [super initWithFrame:frame]) {
34-
[self didInitialize];
3534
self.tintColor = ButtonTintColor;
3635
[self setTitleColor:self.tintColor forState:UIControlStateNormal];// 初始化时 adjustsTitleTintColorAutomatically 还是 NO,所以这里手动把 titleColor 设置为 tintColor 的值
3736

3837
// iOS7以后的button,sizeToFit后默认会自带一个上下的contentInsets,为了保证按钮大小即为内容大小,这里直接去掉,改为一个最小的值。
3938
self.contentEdgeInsets = UIEdgeInsetsMake(CGFLOAT_MIN, 0, CGFLOAT_MIN, 0);
39+
40+
// 放在后面,让前面的默认值可以被子类重写的 didInitialize 覆盖
41+
[self didInitialize];
4042
}
4143
return self;
4244
}

QMUIKit/UIKitExtensions/QMUIStringPrivate.m

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)