diff --git a/AvoidCrash/NSObject+AvoidCrash.m b/AvoidCrash/NSObject+AvoidCrash.m index b6542ec..b6715b0 100644 --- a/AvoidCrash/NSObject+AvoidCrash.m +++ b/AvoidCrash/NSObject+AvoidCrash.m @@ -103,25 +103,22 @@ - (NSMethodSignature *)avoidCrashMethodSignatureForSelector:(SEL)aSelector { NSMethodSignature *ms = [self avoidCrashMethodSignatureForSelector:aSelector]; - BOOL flag = NO; - if (ms == nil) { - for (NSString *classStr in noneSelClassStrings) { - if ([self isKindOfClass:NSClassFromString(classStr)]) { - ms = [AvoidCrashStubProxy instanceMethodSignatureForSelector:@selector(proxyMethod)]; - flag = YES; - break; - } + if (ms) return ms; + + for (NSString *classStr in noneSelClassStrings) { + if ([self isKindOfClass:NSClassFromString(classStr)]) { + return [AvoidCrashStubProxy instanceMethodSignatureForSelector:@selector(proxyMethod)]; } } - if (flag == NO) { - NSString *selfClass = NSStringFromClass([self class]); - for (NSString *classStrPrefix in noneSelClassStringPrefixs) { - if ([selfClass hasPrefix:classStrPrefix]) { - ms = [AvoidCrashStubProxy instanceMethodSignatureForSelector:@selector(proxyMethod)]; - } + + NSString *selfClass = NSStringFromClass([self class]); + for (NSString *classStrPrefix in noneSelClassStringPrefixs) { + if ([selfClass hasPrefix:classStrPrefix]) { + return [AvoidCrashStubProxy instanceMethodSignatureForSelector:@selector(proxyMethod)]; } } - return ms; + + return nil; } - (void)avoidCrashForwardInvocation:(NSInvocation *)anInvocation {