tq/YYKit/Image/YYAnimatedImageView.m:542: error: NULL_DEREFERENCE
pointer self last assigned on line 541 could be null and is dereferenced at line 542, column 5
if (_runloopMode.length == 0) _runloopMode = NSRunLoopCommonModes;
if ([aDecoder containsValueForKey:@"autoPlayAnimatedImage"]) {
tq/YYKit/Image/YYAnimatedImageView.m:120: error: NULL_DEREFERENCE
pointer self last assigned on line 119 could be null and is dereferenced at line 120, column 5
(instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
_runloopMode = NSRunLoopCommonModes;
_autoPlayAnimatedImage = YES;
return self;
tq/YYKit/Image/YYAnimatedImageView.m:136: error: NULL_DEREFERENCE
pointer self last assigned on line 135 could be null and is dereferenced at line 136, column 5
tq/YYKit/Image/YYAnimatedImageView.m:127: error: NULL_DEREFERENCE
pointer self last assigned on line 126 could be null and is dereferenced at line 127, column 5
(instancetype)initWithImage:(UIImage *)image {
self = [super init];
_runloopMode = NSRunLoopCommonModes;
_autoPlayAnimatedImage = YES;
self.frame = (CGRect) {CGPointZero, image.size };
tq/YYKit/Image/YYAnimatedImageView.m:113: error: NULL_DEREFERENCE
pointer self last assigned on line 112 could be null and is dereferenced at line 113, column 5
(instancetype)init {
self = [super init];
_runloopMode = NSRunLoopCommonModes;
_autoPlayAnimatedImage = YES;
return self;
tq/YYKit/Utility/YYAsyncLayer.m:88: error: NULL_DEREFERENCE
pointer self last assigned on line 81 could be null and is dereferenced at line 88, column 5
});
self.contentsScale = scale;
_sentinel = [YYSentinel new];
_displaysAsynchronously = YES;
return self;
tq/YYKit/Image/YYImageCoder.m:692: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceGray() at line 692, column 36 is not reachable after line 692, column 21
return space && CFEqual(space, YYCGColorSpaceGetDeviceGray());
}
tq/YYKit/Image/YYImageCoder.m:687: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 687, column 36 is not reachable after line 687, column 21
return space && CFEqual(space, YYCGColorSpaceGetDeviceRGB());
}
tq/YYKit/Image/YYImageCoder.m:1005: error: MEMORY_LEAK
memory dynamically allocated to tmp.data by call to malloc() at line 987, column 16 is not reachable after line 1005, column 5
tq/YYKit/Image/YYImageCoder.m:934: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 934, column 81 is not reachable after line 934, column 9
tq/YYKit/Image/YYWebImageOperation.m:35: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 35, column 64 is not reachable after line 35, column 5
tq/YYKit/Model/YYClassInfo.m:260: error: NULL_DEREFERENCE
pointer self last assigned on line 259 could be null and is dereferenced at line 260, column 5
if (!cls) return nil;
self = [super init];
_cls = cls;
_superCls = class_getSuperclass(cls);
_isMeta = class_isMetaClass(cls);
tq/YYKit/Model/YYClassInfo.m:98: error: NULL_DEREFERENCE
pointer self last assigned on line 97 could be null and is dereferenced at line 98, column 5
if (!ivar) return nil;
self = [super init];
_ivar = ivar;
const char *name = ivar_getName(ivar);
if (name) {
tq/YYKit/Model/YYClassInfo.m:119: error: NULL_DEREFERENCE
pointer self last assigned on line 118 could be null and is dereferenced at line 119, column 5
if (!method) return nil;
self = [super init];
_method = method;
_sel = method_getName(method);
_imp = method_getImplementation(method);
tq/YYKit/Model/YYClassInfo.m:156: error: NULL_DEREFERENCE
pointer self last assigned on line 155 could be null and is dereferenced at line 156, column 5
if (!property) return nil;
self = [super init];
_property = property;
const char *name = property_getName(property);
if (name) {
tq/YYKit/Utility/YYDispatchQueuePool.m:170: error: NULL_DEREFERENCE
pointer self last assigned on line 168 could be null and is dereferenced at line 170, column 5
tq/YYKit/Utility/YYDispatchQueuePool.m:178: error: NULL_DEREFERENCE
pointer self last assigned on line 177 could be null and is dereferenced at line 178, column 5
if (queueCount == 0 || queueCount > MAX_QUEUE_COUNT) return nil;
tq/YYKit/Image/YYImageCoder.m:2432: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 2432, column 75 is not reachable after line 2432, column 9
tq/YYKit/Image/YYImageCoder.m:2281: error: MEMORY_LEAK
memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 2281, column 91 is not reachable after line 2281, column 17
tq/YYKit/Image/YYImageCoder.m:1727: error: NULL_DEREFERENCE
pointer self last assigned on line 1724 could be null and is dereferenced at line 1727, column 5
if (scale <= 0)
scale = 1;
_scale = scale;
_framesLock = dispatch_semaphore_create(1);
pthread_mutex_init_recursive(&_lock, true);
tq/YYKit/Cache/YYKVStorage.m:793: error: MEMORY_LEAK
memory dynamically allocated to self->_dbStmtCache by call to _dbOpen at line 789, column 10 is not reachable after line 793, column 14
[self _dbClose];
[self _reset]; // rebuild
if (![self _dbOpen] || ![self _dbInitialize]) {
[self _dbClose];
NSLog(@"YYKVStorage init error: fail to open sqlite db.");
tq/YYKit/Cache/YYKVStorage.m:765: error: NULL_DEREFERENCE
pointer self last assigned on line 764 could be null and is dereferenced at line 765, column 5
tq/YYKit/Cache/YYMemoryCache.m:201: error: MEMORY_LEAK
memory dynamically allocated by call to block at line 201, column 5 is not reachable after line 201, column 5
(void)_trimInBackground {
dispatch_async(_queue, ^{
[self _trimToCost:self->_costLimit];
[self _trimToCount:self->_countLimit];
tq/YYKit/Cache/YYMemoryCache.m:334: error: NULL_DEREFERENCE
pointer self last assigned on line 332 could be null and is dereferenced at line 334, column 5
tq/YYKit/Text/String/YYTextAttribute.m:357: error: NULL_DEREFERENCE
pointer self last assigned on line 356 could be null and is dereferenced at line 357, column 5
tq/YYKit/Text/String/YYTextAttribute.m:128: error: NULL_DEREFERENCE
pointer self last assigned on line 127 could be null and is dereferenced at line 128, column 5
tq/YYKit/Text/String/YYTextAttribute.m:155: error: NULL_DEREFERENCE
pointer self last assigned on line 154 could be null and is dereferenced at line 155, column 5
tq/YYKit/Text/String/YYTextAttribute.m:314: error: NULL_DEREFERENCE
pointer self last assigned on line 313 could be null and is dereferenced at line 314, column 5
tq/YYKit/Text/Component/YYTextLayout.m:172: error: NULL_DEREFERENCE
pointer self last assigned on line 171 could be null and is dereferenced at line 172, column 5
tq/YYKit/Text/String/YYTextAttribute.m:235: error: NULL_DEREFERENCE
pointer self last assigned on line 234 could be null and is dereferenced at line 235, column 5
(instancetype)init {
self = [super init];
_style = YYTextLineStyleSingle;
return self;
}
tq/YYKit/Text/String/YYTextAttribute.m:416: error: NULL_DEREFERENCE
pointer self last assigned on line 413 could be null and is dereferenced at line 416, column 9
tq/YYKit/Text/String/YYTextRubyAnnotation.m:73: error: NULL_DEREFERENCE
pointer self last assigned on line 72 could be null and is dereferenced at line 73, column 5
tq/YYKit/Text/String/YYTextRunDelegate.m:55: error: NULL_DEREFERENCE
pointer self last assigned on line 54 could be null and is dereferenced at line 55, column 5
tq/YYKit/Text/String/YYTextAttribute.m:212: error: NULL_DEREFERENCE
pointer self last assigned on line 211 could be null and is dereferenced at line 212, column 5
tq/YYKit/Text/String/YYTextParser.m:316: error: NULL_DEREFERENCE
pointer self last assigned on line 315 could be null and is dereferenced at line 316, column 5
(instancetype)init {
self = [super init];
_lock = dispatch_semaphore_create(1);
return self;
}
tq/YYKit/Text/String/YYTextParser.m:75: error: NULL_DEREFERENCE
pointer self last assigned on line 74 could be null and is dereferenced at line 75, column 5
(instancetype)init {
self = [super init];
_fontSize = 14;
_headerFontSize = 20;
[self _updateFonts];
tq/YYKit/Text/YYTextView.m:1327: error: NULL_DEREFERENCE
pointer start last assigned on line 1325 could be null and is dereferenced by call to rangeWithStart:end: at line 1327, column 12
tq/YYKit/Utility/YYTimer.m:48: error: NULL_DEREFERENCE
pointer self last assigned on line 47 could be null and is dereferenced at line 48, column 5
repeats:(BOOL)repeats {
self = [super init];
_repeats = repeats;
_timeInterval = interval;
_valid = YES;
tq/YYKit/Cache/YYMemoryCache.m:92: error: NULL_DEREFERENCE
pointer self last assigned on line 91 could be null and is dereferenced at line 92, column 5
tq/YYKit/Text/Component/YYTextMagnifier.m:33: error: NULL_DEREFERENCE
pointer self last assigned on line 32 could be null and is dereferenced at line 33, column 5
tq/YYKit/Text/Component/YYTextMagnifier.m:178: error: NULL_DEREFERENCE
pointer self last assigned on line 177 could be null and is dereferenced at line 178, column 5
tq/YYKit/Image/Categories/UIButton+YYWebImage.m:51: error: NULL_DEREFERENCE
pointer self last assigned on line 50 could be null and is dereferenced at line 51, column 5
(instancetype)init {
self = [super init];
_lock = dispatch_semaphore_create(1);
_dic = [NSMutableDictionary new];
return self;
tq/YYKit/Image/Categories/_YYWebImageSetter.m:30: error: NULL_DEREFERENCE
pointer self last assigned on line 29 could be null and is dereferenced at line 30, column 5
(instancetype)init {
self = [super init];
_lock = dispatch_semaphore_create(1);
return self;
}
tq/Log/LogServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m:55: warning: PARAMETER_NOT_NULL_CHECKED
Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 55, column 5
NSError* error = nil;
NSData* data = block(&error);
completionBlock(data, error);
}];
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:897: warning: PARAMETER_NOT_NULL_CHECKED
Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 897, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:914: warning: PARAMETER_NOT_NULL_CHECKED
Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 914, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:938: warning: PARAMETER_NOT_NULL_CHECKED
Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 938, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:358: warning: PARAMETER_NOT_NULL_CHECKED
Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 358, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:325: error: MEMORY_LEAK
memory dynamically allocated by call to block at line 325, column 7 is not reachable after line 325, column 7
_activeConnections -= 1;
if (_activeConnections == 0) {
dispatch_async(dispatch_get_main_queue(), ^{
if ((_disconnectDelay > 0.0) && (_source4 != NULL)) {
if (_disconnectTimer) {
tq/YYKit/Text/YYLabel.m:1114: warning: PARAMETER_NOT_NULL_CHECKED
Parameter isCancelled is not checked for null, there could be a null pointer dereference: pointer isCancelled could be null and is dereferenced at line 1114, column 13
tq/YYKit/Base/YYKitMacro.h:298: warning: PARAMETER_NOT_NULL_CHECKED
Parameter block is not checked for null, there could be a null pointer dereference: pointer block could be null and is dereferenced at line 298, column 9
block();
} else {
dispatch_async(dispatch_get_main_queue(), block);
}
}
tq/YYKit/Base/YYKitMacro.h:296: warning: PARAMETER_NOT_NULL_CHECKED
Parameter block is not checked for null, there could be a null pointer dereference: pointer block could be null and is dereferenced at line 296, column 9
tq/YYKit/Model/NSObject+YYModel.m:790: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 790, column 9. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
NSNumber *num = YYNSNumberCreateFromID(value);
ModelSetNumberToProperty(model, num, meta);
if (num) [num class]; // hold the number
} else if (meta->_nsType) {
if (value == (id)kCFNull) {
tq/YYKit/Model/NSObject+YYModel.m:115: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 115, column 9. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
if ([value isKindOfClass:[NSString class]]) {
NSNumber *num = dic[value];
if (num) {
if (num == (id)kCFNull) return nil;
return num;
tq/YYKit/Text/String/YYTextAttribute.m:109: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 109, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
});
NSNumber *num = dic[name];
if (num) return num.integerValue;
return YYTextAttributeTypeNone;
}
tq/YYKit/Text/Component/YYTextLayout.m:2903: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 2903, column 37. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:2932: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 2932, column 37. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:2253: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 2253, column 13. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.h:289: warning: ASSIGN_POINTER_WARNING
Property delegate is a pointer type marked with the assign attribute at line 289, column 1. Use a different attribute like strong or weak.
Sets the delegate for the server.
*/
@property(nonatomic, assign) id delegate;
/**
tq/YYKit/Model/YYClassInfo.h:151: warning: ASSIGN_POINTER_WARNING
Property metaCls is a pointer type marked with the assign attribute at line 151, column 1. Use a different attribute like strong or weak.
@property (nonatomic, assign, readonly) Class cls; ///< class object
@property (nullable, nonatomic, assign, readonly) Class superCls; ///< super class object
@property (nullable, nonatomic, assign, readonly) Class metaCls; ///< class's meta class object
@property (nonatomic, readonly) BOOL isMeta; ///< whether this class is meta class
@property (nonatomic, strong, readonly) NSString *name; ///< class name
tq/YYKit/Model/YYClassInfo.h:149: warning: ASSIGN_POINTER_WARNING
Property cls is a pointer type marked with the assign attribute at line 149, column 1. Use a different attribute like strong or weak.
*/
@interface YYClassInfo : NSObject
@property (nonatomic, assign, readonly) Class cls; ///< class object
@property (nullable, nonatomic, assign, readonly) Class superCls; ///< super class object
@property (nullable, nonatomic, assign, readonly) Class metaCls; ///< class's meta class object
tq/YYKit/Model/YYClassInfo.h:130: warning: ASSIGN_POINTER_WARNING
Property cls is a pointer type marked with the assign attribute at line 130, column 1. Use a different attribute like strong or weak.
@property (nonatomic, strong, readonly) NSString *typeEncoding; ///< property's encoding value
@property (nonatomic, strong, readonly) NSString *ivarName; ///< property's ivar name
@property (nullable, nonatomic, assign, readonly) Class cls; ///< may be nil
@property (nonatomic, assign, readonly) SEL getter; ///< getter (nonnull)
tq/YYKit/Model/YYClassInfo.h:150: warning: ASSIGN_POINTER_WARNING
Property superCls is a pointer type marked with the assign attribute at line 150, column 1. Use a different attribute like strong or weak.
@interface YYClassInfo : NSObject
@property (nonatomic, assign, readonly) Class cls; ///< class object
@property (nullable, nonatomic, assign, readonly) Class superCls; ///< super class object
@property (nullable, nonatomic, assign, readonly) Class metaCls; ///< class's meta class object
@property (nonatomic, readonly) BOOL isMeta; ///< whether this class is meta class
tq/YYKit/Text/YYTextView.m:771: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 771, column 41. Accessing an ivar of an atomic property makes the property nonatomic
if ([YYTextKeyboardManager defaultManager].keyboardVisible) {
[self _scrollRangeToVisible:_selectedTextRange];
} else {
[self _restoreInsetsAnimated:YES];
tq/YYKit/Image/YYImageCache.m:251: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 251, column 22. Accessing an ivar of an atomic property makes the property nonatomic
if (type & YYImageCacheTypeMemory) {
image = [_memoryCache objectForKey:key];
if (image) {
dispatch_async(dispatch_get_main_queue(), ^{
tq/YYKit/Cache/YYMemoryCache.m:202: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _costLimit of an atomic property at line 202, column 27. Accessing an ivar of an atomic property makes the property nonatomic
(void)_trimInBackground {
dispatch_async(_queue, ^{
[self _trimToCost:self->_costLimit];
[self _trimToCount:self->_countLimit];
[self _trimToAge:self->_ageLimit];
tq/YYKit/Cache/YYCache.m:89: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 89, column 29. Accessing an ivar of an atomic property makes the property nonatomic
} else {
[_diskCache objectForKey:key withBlock:^(NSString *key, id object) {
if (object && ![_memoryCache objectForKey:key]) {
[_memoryCache setObject:object forKey:key];
}
tq/YYKit/Cache/YYCache.m:90: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 90, column 18. Accessing an ivar of an atomic property makes the property nonatomic
[_diskCache objectForKey:key withBlock:^(NSString *key, id object) {
if (object && ![_memoryCache objectForKey:key]) {
[_memoryCache setObject:object forKey:key];
}
block(key, object);
tq/YYKit/Cache/YYMemoryCache.m:203: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _countLimit of an atomic property at line 203, column 28. Accessing an ivar of an atomic property makes the property nonatomic
dispatch_async(_queue, ^{
[self _trimToCost:self->_costLimit];
[self _trimToCount:self->_countLimit];
[self _trimToAge:self->_ageLimit];
});
tq/YYKit/Image/YYImageCache.m:261: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 261, column 33. Accessing an ivar of an atomic property makes the property nonatomic
if (type & YYImageCacheTypeDisk) {
NSData* data = (id)[_diskCache objectForKey:key];
image = [self imageFromData:data];
if (image) {
tq/YYKit/Image/YYImageCache.m:264: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 264, column 18. Accessing an ivar of an atomic property makes the property nonatomic
image = [self imageFromData:data];
if (image) {
[_memoryCache setObject:image forKey:key];
dispatch_async(dispatch_get_main_queue(), ^{
block(image, YYImageCacheTypeDisk);
tq/YYKit/Cache/YYMemoryCache.m:204: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _ageLimit of an atomic property at line 204, column 26. Accessing an ivar of an atomic property makes the property nonatomic
[self _trimToCost:self->_costLimit];
[self _trimToCount:self->_countLimit];
[self _trimToAge:self->_ageLimit];
});
}
tq/YYKit/Image/YYImageCache.m:288: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 288, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:448: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _costLimit of an atomic property at line 448, column 30. Accessing an ivar of an atomic property makes the property nonatomic
if (_lru->_totalCost > _costLimit) {
dispatch_async(_queue, ^{
[self trimToCost:_costLimit];
});
}
tq/YYKit/Text/YYTextView.m:1270: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1270, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1265: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1265, column 77. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2997: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2997, column 54. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:157: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customFileNameBlock of an atomic property at line 157, column 25. Accessing an ivar of an atomic property makes the property nonatomic
NSString* LFN_file_name = nil;
if (_customFileNameBlock)
LFN_file_name = _customFileNameBlock(key);
if (!LFN_file_name)
LFN_file_name = key.md5String;
tq/YYKit/Cache/YYDiskCache.m:156: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customFileNameBlock of an atomic property at line 156, column 9. Accessing an ivar of an atomic property makes the property nonatomic
{
NSString* LFN_file_name = nil;
if (_customFileNameBlock)
LFN_file_name = _customFileNameBlock(key);
if (!LFN_file_name)
tq/YYKit/Text/YYTextView.m:1940: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1940, column 5. Accessing an ivar of an atomic property makes the property nonatomic
// UITextInput
_selectedTextRange = [YYTextRange defaultRange];
_markedTextRange = nil;
_markedTextStyle = nil;
tq/YYKit/Text/YYTextView.m:1493: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1493, column 28. Accessing an ivar of an atomic property makes the property nonatomic
if (self.textParser) {
YYTextRange *oldTextRange = _selectedTextRange;
NSRange newRange = _selectedTextRange.asRange;
[_inputDelegate textWillChange:self];
tq/YYKit/Text/YYTextView.m:1492: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1492, column 37. Accessing an ivar of an atomic property makes the property nonatomic
(BOOL)_parseText {
if (self.textParser) {
YYTextRange *oldTextRange = _selectedTextRange;
NSRange newRange = _selectedTextRange.asRange;
tq/YYKit/Text/YYTextView.m:1504: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1504, column 13. Accessing an ivar of an atomic property makes the property nonatomic
if (![oldTextRange isEqual:newTextRange]) {
[_inputDelegate selectionWillChange:self];
_selectedTextRange = newTextRange;
[_inputDelegate selectionDidChange:self];
}
tq/YYKit/Text/YYTextView.m:1420: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1420, column 46. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1413, column 40. Accessing an ivar of an atomic property makes the property nonatomic
if (range.end.offset <= _selectedTextRange.start.offset) {
tq/YYKit/Text/YYTextView.m:1426: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1426, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1399: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1399, column 38. Accessing an ivar of an atomic property makes the property nonatomic
/// The caller should make sure the range and text are valid before call this method.
if (NSEqualRanges(range.asRange, _selectedTextRange.asRange)) {
if (notify) [_inputDelegate selectionWillChange:self];
NSRange newRange = NSMakeRange(0, 0);
tq/YYKit/Text/YYTextView.m:1435: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1435, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1421: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1421, column 44. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1440: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1440, column 13. Accessing an ivar of an atomic property makes the property nonatomic
if (notify) [_inputDelegate selectionDidChange:self];
}
tq/YYKit/Text/YYTextView.m:1424: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1424, column 36. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1417: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1417, column 45. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1403: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1403, column 9. Accessing an ivar of an atomic property makes the property nonatomic
if (notify) [_inputDelegate selectionDidChange:self];
} else {
tq/YYKit/Text/YYTextView.m:1419: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1419, column 17. Accessing an ivar of an atomic property makes the property nonatomic
} else if (unionRange.length == _selectedTextRange.asRange.length) {
tq/YYKit/Text/YYTextView.m:1402: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1402, column 29. Accessing an ivar of an atomic property makes the property nonatomic
if (notify) [_inputDelegate selectionWillChange:self];
if (notify) [_inputDelegate selectionDidChange:self];
tq/YYKit/Text/YYTextView.m:1437: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1437, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1429: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1429, column 42. Accessing an ivar of an atomic property makes the property nonatomic
} else {
// interleaving
if (range.start.offset < _selectedTextRange.start.offset) {
tq/YYKit/Text/YYTextView.m:1411: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1411, column 41. Accessing an ivar of an atomic property makes the property nonatomic
if (unionRange.length == 0) {
// no intersection
if (range.end.offset <= _selectedTextRange.start.offset) {
tq/YYKit/Text/YYTextView.m:1433: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1433, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1408: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1408, column 54. Accessing an ivar of an atomic property makes the property nonatomic
if (range.asRange.length != text.length) {
if (notify) [_inputDelegate selectionWillChange:self];
tq/YYKit/Text/YYTextView.m:1440: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1440, column 60. Accessing an ivar of an atomic property makes the property nonatomic
if (notify) [_inputDelegate selectionDidChange:self];
}
tq/YYKit/Text/YYTextView.m:1430: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1430, column 40. Accessing an ivar of an atomic property makes the property nonatomic
// interleaving
if (range.start.offset < _selectedTextRange.start.offset) {
tq/YYKit/Text/YYTextView.m:1415: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1415, column 21. Accessing an ivar of an atomic property makes the property nonatomic
} else if (unionRange.length == _selectedTextRange.asRange.length) {
tq/YYKit/Text/YYTextView.m:1571: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1571, column 97. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1572: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1572, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1601: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1601, column 97. Accessing an ivar of an atomic property makes the property nonatomic
if ([lastObject.text isEqualToAttributedString:self.attributedText]) return;
tq/YYKit/Text/YYTextView.m:1587: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1587, column 97. Accessing an ivar of an atomic property makes the property nonatomic
if ([lastObject.text isEqualToAttributedString:self.attributedText]) return;
tq/YYKit/Text/YYTextView.m:1588: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1588, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:678: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 678, column 33. Accessing an ivar of an atomic property makes the property nonatomic
/// Scroll current selected range to visible.
(void)_scrollSelectedRangeToVisible {
[self _scrollRangeToVisible:_selectedTextRange];
}
tq/YYKit/Text/YYTextView.m:472: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 472, column 34. Accessing an ivar of an atomic property makes the property nonatomic
}
YYTextRange *selectedRange = _selectedTextRange;
if (_state.trackingTouch && _trackingRange) {
selectedRange = _trackingRange;
tq/YYKit/Image/YYWebImageOperation.m:300: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 300, column 29. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Cache/YYDiskCache.m:80: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _autoTrimInterval of an atomic property at line 80, column 63. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:192: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _autoTrimInterval of an atomic property at line 192, column 63. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1454: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1454, column 69. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1454: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1454, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:226: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 226, column 9. Accessing an ivar of an atomic property makes the property nonatomic
[text setAttributes:_typingAttributesHolder.attributes]; // add for empty text caret
}
if (_selectedTextRange.end.offset == _innerText.length) {
[_typingAttributesHolder.attributes enumerateKeysAndObjectsUsingBlock:^(NSString key, id value, BOOL stop) {
tq/YYKit/Text/YYTextView.m:1483: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 1483, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:262: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 262, column 34. Accessing an ivar of an atomic property makes the property nonatomic
BOOL containsDot = NO;
YYTextRange *selectedRange = _selectedTextRange;
if (_state.trackingTouch && _trackingRange) {
selectedRange = _trackingRange;
tq/YYKit/Text/YYTextView.m:420: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 420, column 72. Accessing an ivar of an atomic property makes the property nonatomic
}
YYTextRange *newRange = [YYTextRange rangeWithStart:(isStart ? position : _selectedTextRange.start)
tq/YYKit/Text/YYTextView.m:419: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 419, column 83. Accessing an ivar of an atomic property makes the property nonatomic
position = [YYTextPosition positionWithOffset:_innerText.length];
}
YYTextRange *newRange = [YYTextRange rangeWithStart:(isStart ? position : _selectedTextRange.start)
tq/YYKit/Text/YYTextView.m:413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 413, column 99. Accessing an ivar of an atomic property makes the property nonatomic
position = [self _correctedTextPosition:position];
tq/YYKit/Text/YYTextView.m:412: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 412, column 74. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:412: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 412, column 101. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 413, column 74. Accessing an ivar of an atomic property makes the property nonatomic
position = [self _correctedTextPosition:position];
tq/YYKit/Text/YYTextView.m:2835: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2835, column 9. Accessing an ivar of an atomic property makes the property nonatomic
*/
if (_selectedTextRange.asRange.length == 0) {
if (action == @selector(select:) ||
action == @selector(selectAll:)) {
tq/YYKit/Text/YYTextView.m:2851: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2851, column 20. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:212: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 212, column 14. Accessing an ivar of an atomic property makes the property nonatomic
}
if (type & YYImageCacheTypeDisk) {
if ([_diskCache containsObjectForKey:key])
return YES;
}
tq/YYKit/Image/YYImageCache.m:208: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 208, column 14. Accessing an ivar of an atomic property makes the property nonatomic
{
if (type & YYImageCacheTypeMemory) {
if ([_memoryCache containsObjectForKey:key])
return YES;
}
tq/YYKit/Cache/YYCache.m:54: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 54, column 56. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:54: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 54, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:65: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 65, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:60: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 60, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:82: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _fixedLineHeight of an atomic property at line 82, column 27. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2875: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2875, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(void)cut:(id)sender {
[self _endTouchTracking];
if (_selectedTextRange.asRange.length == 0) return;
[self _copySelectedTextToPasteboard];
tq/YYKit/Text/YYTextView.m:2880: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2880, column 24. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3224: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3224, column 79. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3201: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3201, column 21. Accessing an ivar of an atomic property makes the property nonatomic
(void)deleteBackward {
[self _updateIfNeeded];
NSRange range = _selectedTextRange.asRange;
if (range.location == 0 && range.length == 0) return;
_state.typingAttributesOnce = NO;
tq/YYKit/Text/YYTextView.m:3212: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3212, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3213: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3213, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3213: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3213, column 60. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3229: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3229, column 40. Accessing an ivar of an atomic property makes the property nonatomic
}
}
if (!NSEqualRanges(_lastTypeRange, _selectedTextRange.asRange)) {
[self _saveToUndoStack];
[self _resetRedoStack];
tq/YYKit/Cache/YYCache.m:135: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 135, column 86. Accessing an ivar of an atomic property makes the property nonatomic
(NSString *)description {
if (_name) return [NSString stringWithFormat:@"<%@: %p> (%@)", self.class, self, _name];
tq/YYKit/Cache/YYCache.m:135: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 135, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(NSString *)description {
if (_name) return [NSString stringWithFormat:@"<%@: %p> (%@)", self.class, self, _name];
tq/YYKit/Cache/YYDiskCache.m:502: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 502, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:505: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _path of an atomic property at line 505, column 79. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:503: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _path of an atomic property at line 503, column 89. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:503: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 503, column 82. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Utility/YYKeychain.m:277: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 277, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
if (self.label) [str appendFormat:@" service:%@,\n", self.label];
if (self.type) [str appendFormat:@" service:%@,\n", self.type];
if (self.creater) [str appendFormat:@" service:%@,\n", self.creater];
if (self.comment) [str appendFormat:@" service:%@,\n", self.comment];
if (self.descr) [str appendFormat:@" service:%@,\n", self.descr];
tq/YYKit/Utility/YYKeychain.m:276: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 276, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
if (self.password) [str appendFormat:@" service:%@,\n", self.password];
if (self.label) [str appendFormat:@" service:%@,\n", self.label];
if (self.type) [str appendFormat:@" service:%@,\n", self.type];
if (self.creater) [str appendFormat:@" service:%@,\n", self.creater];
if (self.comment) [str appendFormat:@" service:%@,\n", self.comment];
tq/YYKit/Cache/YYMemoryCache.m:510: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 510, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(NSString *)description {
if (_name) return [NSString stringWithFormat:@"<%@: %p> (%@)", self.class, self, _name];
tq/YYKit/Cache/YYMemoryCache.m:510: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _name of an atomic property at line 510, column 86. Accessing an ivar of an atomic property makes the property nonatomic
(NSString *)description {
if (_name) return [NSString stringWithFormat:@"<%@: %p> (%@)", self.class, self, _name];
tq/YYKit/Utility/YYKeychain.m:222: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 222, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
if (self.accessible) dic[(__bridge id)kSecAttrAccessible] = YYKeychainAccessibleStr(self.accessible);
if (self.passwordData) dic[(__bridge id)kSecValueData] = self.passwordData;
if (self.type) dic[(__bridge id)kSecAttrType] = self.type;
if (self.creater) dic[(__bridge id)kSecAttrCreator] = self.creater;
if (self.comment) dic[(__bridge id)kSecAttrComment] = self.comment;
tq/YYKit/Utility/YYKeychain.m:223: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 223, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
if (self.passwordData) dic[(__bridge id)kSecValueData] = self.passwordData;
if (self.type) dic[(__bridge id)kSecAttrType] = self.type;
if (self.creater) dic[(__bridge id)kSecAttrCreator] = self.creater;
if (self.comment) dic[(__bridge id)kSecAttrComment] = self.comment;
if (self.descr) dic[(__bridge id)kSecAttrDescription] = self.descr;
tq/YYKit/Utility/YYAsyncLayer.m:104: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _displaysAsynchronously of an atomic property at line 104, column 25. Accessing an ivar of an atomic property makes the property nonatomic
(void)display {
super.contents = super.contents;
[self _displayAsync:_displaysAsynchronously];
}
tq/YYKit/Image/YYImageCache.m:280: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 280, column 17. Accessing an ivar of an atomic property makes the property nonatomic
(NSData)getImageDataForKey:(NSString)key
{
return (id)[_diskCache objectForKey:key];
}
tq/YYKit/Image/YYImageCache.m:236: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 236, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:233: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 233, column 29. Accessing an ivar of an atomic property makes the property nonatomic
}
if (type & YYImageCacheTypeDisk) {
NSData* data = (id)[_diskCache objectForKey:key];
UIImage* image = [self imageFromData:data];
if (image && (type & YYImageCacheTypeMemory)) {
tq/YYKit/Image/YYImageCache.m:228: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 228, column 27. Accessing an ivar of an atomic property makes the property nonatomic
return nil;
if (type & YYImageCacheTypeMemory) {
UIImage* image = [_memoryCache objectForKey:key];
if (image)
return image;
tq/YYKit/Image/YYImageCache.m:71: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _allowAnimatedImage of an atomic property at line 71, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:73: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _decodeForDisplay of an atomic property at line 73, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:77: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _decodeForDisplay of an atomic property at line 77, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3192: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3192, column 40. Accessing an ivar of an atomic property makes the property nonatomic
(void)insertText:(NSString *)text {
if (text.length == 0) return;
if (!NSEqualRanges(_lastTypeRange, _selectedTextRange.asRange)) {
[self _saveToUndoStack];
[self _resetRedoStack];
tq/YYKit/Text/YYTextView.m:3196: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3196, column 24. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:766: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _cancelled of an atomic property at line 766, column 22. Accessing an ivar of an atomic property makes the property nonatomic
(BOOL)isCancelled {
[_lock lock];
BOOL cancelled = _cancelled;
[_lock unlock];
return cancelled;
tq/YYKit/Image/YYWebImageOperation.m:732: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _executing of an atomic property at line 732, column 22. Accessing an ivar of an atomic property makes the property nonatomic
(BOOL)isExecuting {
[_lock lock];
BOOL executing = _executing;
[_lock unlock];
return executing;
tq/YYKit/Image/YYWebImageOperation.m:749: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _finished of an atomic property at line 749, column 21. Accessing an ivar of an atomic property makes the property nonatomic
(BOOL)isFinished {
[_lock lock];
BOOL finished = _finished;
[_lock unlock];
return finished;
tq/YYKit/Model/NSObject+YYModel.m:1645: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 1645, column 13. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:67: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _fixedLineHeight of an atomic property at line 67, column 99. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _fixedLineHeight of an atomic property at line 74, column 32. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _fixedLineHeight of an atomic property at line 74, column 51. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:67: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _fixedLineHeight of an atomic property at line 67, column 80. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:72: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 72, column 19. Accessing an ivar of an atomic property makes the property nonatomic
id object = [_memoryCache objectForKey:key];
if (!object) {
object = [_diskCache objectForKey:key];
if (object) {
[_memoryCache setObject:object forKey:key];
tq/YYKit/Cache/YYCache.m:70: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 70, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 74, column 14. Accessing an ivar of an atomic property makes the property nonatomic
object = [_diskCache objectForKey:key];
if (object) {
[_memoryCache setObject:object forKey:key];
}
}
tq/YYKit/Cache/YYDiskCache.m:263: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customUnarchiveBlock of an atomic property at line 263, column 9. Accessing an ivar of an atomic property makes the property nonatomic
id object = nil;
if (_customUnarchiveBlock) {
object = _customUnarchiveBlock(item.value);
} else {
tq/YYKit/Cache/YYDiskCache.m:264: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customUnarchiveBlock of an atomic property at line 264, column 18. Accessing an ivar of an atomic property makes the property nonatomic
id object = nil;
if (_customUnarchiveBlock) {
object = _customUnarchiveBlock(item.value);
} else {
@try {
tq/YYKit/Cache/YYCache.m:88: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 88, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:82: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 82, column 28. Accessing an ivar of an atomic property makes the property nonatomic
(void)objectForKey:(NSString )key withBlock:(void (^)(NSString key, id object))block {
tq/YYKit/Text/YYTextView.m:2943: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2943, column 34. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2945: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2945, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2958: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2958, column 32. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:119: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 119, column 6. Accessing an ivar of an atomic property makes the property nonatomic
(void)removeAllObjects {
[_memoryCache removeAllObjects];
[_diskCache removeAllObjects];
}
tq/YYKit/Cache/YYCache.m:118: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 118, column 6. Accessing an ivar of an atomic property makes the property nonatomic
(void)removeAllObjects {
[_memoryCache removeAllObjects];
[_diskCache removeAllObjects];
}
tq/YYKit/Cache/YYCache.m:123: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 123, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:124: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 124, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:130: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 130, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:129: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 129, column 6. Accessing an ivar of an atomic property makes the property nonatomic
(void)removeAllObjectsWithProgressBlock:(void(^)(int removedCount, int totalCount))progress
tq/YYKit/Image/YYImageCache.m:195: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 195, column 10. Accessing an ivar of an atomic property makes the property nonatomic
{
if (type & YYImageCacheTypeMemory)
[_memoryCache removeObjectForKey:key];
if (type & YYImageCacheTypeDisk)
[_diskCache removeObjectForKey:key];
tq/YYKit/Image/YYImageCache.m:197: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 197, column 10. Accessing an ivar of an atomic property makes the property nonatomic
[_memoryCache removeObjectForKey:key];
if (type & YYImageCacheTypeDisk)
[_diskCache removeObjectForKey:key];
}
tq/YYKit/Cache/YYCache.m:108: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 108, column 6. Accessing an ivar of an atomic property makes the property nonatomic
(void)removeObjectForKey:(NSString *)key {
[_memoryCache removeObjectForKey:key];
[_diskCache removeObjectForKey:key];
}
tq/YYKit/Cache/YYCache.m:109: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 109, column 6. Accessing an ivar of an atomic property makes the property nonatomic
(void)removeObjectForKey:(NSString *)key {
[_memoryCache removeObjectForKey:key];
[_diskCache removeObjectForKey:key];
}
tq/YYKit/Cache/YYCache.m:114: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 114, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:113: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 113, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3408: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3408, column 37. Accessing an ivar of an atomic property makes the property nonatomic
if (self.isFirstResponder) {
[self _scrollRangeToVisible:_selectedTextRange];
}
tq/YYKit/Text/YYTextView.m:3416: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3416, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2970: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2970, column 9. Accessing an ivar of an atomic property makes the property nonatomic
if (newRange.asRange.length > 0) {
[_inputDelegate selectionWillChange:self];
_selectedTextRange = newRange;
[_inputDelegate selectionDidChange:self];
}
tq/YYKit/Text/YYTextView.m:2967: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2967, column 67. Accessing an ivar of an atomic property makes the property nonatomic
if (_selectedTextRange.asRange.length > 0 || _innerText.length == 0) return;
tq/YYKit/Text/YYTextView.m:2966: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2966, column 9. Accessing an ivar of an atomic property makes the property nonatomic
[self _endTouchTracking];
if (_selectedTextRange.asRange.length > 0 || _innerText.length == 0) return;
tq/YYKit/Text/YYTextView.m:2984: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2984, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3611: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3611, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(UITextStorageDirection)selectionAffinity {
if (_selectedTextRange.end.affinity == YYTextAffinityForward) {
return UITextStorageDirectionForward;
} else {
tq/YYKit/Text/YYTextView.m:2149: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2149, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2163: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2163, column 37. Accessing an ivar of an atomic property makes the property nonatomic
if (self.isFirstResponder) {
[self _scrollRangeToVisible:_selectedTextRange];
}
tq/YYKit/Image/YYWebImageOperation.m:756: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _cancelled of an atomic property at line 756, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(void)setCancelled:(BOOL)cancelled {
[_lock lock];
if (_cancelled != cancelled) {
[self willChangeValueForKey:@"isCancelled"];
_cancelled = cancelled;
tq/YYKit/Image/YYWebImageOperation.m:758: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _cancelled of an atomic property at line 758, column 9. Accessing an ivar of an atomic property makes the property nonatomic
if (_cancelled != cancelled) {
[self willChangeValueForKey:@"isCancelled"];
_cancelled = cancelled;
[self didChangeValueForKey:@"isCancelled"];
}
tq/YYKit/Image/YYWebImageOperation.m:724: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _executing of an atomic property at line 724, column 9. Accessing an ivar of an atomic property makes the property nonatomic
if (_executing != executing) {
[self willChangeValueForKey:@"isExecuting"];
_executing = executing;
[self didChangeValueForKey:@"isExecuting"];
}
tq/YYKit/Image/YYWebImageOperation.m:722: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _executing of an atomic property at line 722, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(void)setExecuting:(BOOL)executing {
[_lock lock];
if (_executing != executing) {
[self willChangeValueForKey:@"isExecuting"];
_executing = executing;
tq/YYKit/Image/YYWebImageOperation.m:739: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _finished of an atomic property at line 739, column 9. Accessing an ivar of an atomic property makes the property nonatomic
(void)setFinished:(BOOL)finished {
[_lock lock];
if (_finished != finished) {
[self willChangeValueForKey:@"isFinished"];
_finished = finished;
tq/YYKit/Image/YYWebImageOperation.m:741: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _finished of an atomic property at line 741, column 9. Accessing an ivar of an atomic property makes the property nonatomic
if (_finished != finished) {
[self willChangeValueForKey:@"isFinished"];
_finished = finished;
[self didChangeValueForKey:@"isFinished"];
}
tq/YYKit/Image/YYImageCache.m:149: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 149, column 18. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:173: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 173, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3298: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3298, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3317: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3317, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3341: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3341, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3308: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3308, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3309: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3309, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3317: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3317, column 52. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3286: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3286, column 40. Accessing an ivar of an atomic property makes the property nonatomic
if (!NSEqualRanges(_lastTypeRange, _selectedTextRange.asRange)) {
[self _saveToUndoStack];
[self _resetRedoStack];
tq/YYKit/Text/YYTextView.m:3314: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3314, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3299: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3299, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3280: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3280, column 83. Accessing an ivar of an atomic property makes the property nonatomic
if ([self.delegate respondsToSelector:@selector(textView:shouldChangeTextInRange:replacementText:)]) {
NSRange range = _markedTextRange ? _markedTextRange.asRange : NSMakeRange(_selectedTextRange.end.offset, 0);
BOOL should = [self.delegate textView:self shouldChangeTextInRange:range replacementText:markedText];
if (!should) return;
tq/YYKit/Text/YYTextView.m:3307: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3307, column 68. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3334: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3334, column 33. Accessing an ivar of an atomic property makes the property nonatomic
[self _updateLayout];
[self _updateSelectionView];
[self _scrollRangeToVisible:_selectedTextRange];
if ([self.delegate respondsToSelector:@selector(textViewDidChange:)]) {
tq/YYKit/Text/YYTextView.m:3309: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3309, column 70. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:98: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 98, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:99: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 99, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:316: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _inlineThreshold of an atomic property at line 316, column 28. Accessing an ivar of an atomic property makes the property nonatomic
NSString* LFN_file_name = nil;
if (_kv.type != YYKVStorageTypeSQLite) {
if (value.length > _inlineThreshold) {
LFN_file_name = [self _filenameForKey:key];
}
tq/YYKit/Cache/YYDiskCache.m:302: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customArchiveBlock of an atomic property at line 302, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:303: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _customArchiveBlock of an atomic property at line 303, column 17. Accessing an ivar of an atomic property makes the property nonatomic
NSData* value = nil;
if (_customArchiveBlock) {
value = _customArchiveBlock(object);
} else {
@try {
tq/YYKit/Cache/YYCache.m:104: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _diskCache of an atomic property at line 104, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:103: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _memoryCache of an atomic property at line 103, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:451: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _countLimit of an atomic property at line 451, column 29. Accessing an ivar of an atomic property makes the property nonatomic
});
}
if (_lru->_totalCount > _countLimit) {
_YYLinkedMapNode *node = [_lru removeTailNode];
if (_lru->_releaseAsynchronously) {
tq/YYKit/Cache/YYMemoryCache.m:446: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _costLimit of an atomic property at line 446, column 28. Accessing an ivar of an atomic property makes the property nonatomic
[_lru insertNodeAtHead:node];
}
if (_lru->_totalCost > _costLimit) {
dispatch_async(_queue, ^{
[self trimToCost:_costLimit];
tq/YYKit/Text/YYTextView.m:2252: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2252, column 5. Accessing an ivar of an atomic property makes the property nonatomic
range = [self _correctedTextRange:range];
[self _endTouchTracking];
_selectedTextRange = range;
[self _updateSelectionView];
tq/YYKit/Text/YYTextView.m:3254: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3254, column 22. Accessing an ivar of an atomic property makes the property nonatomic
[_inputDelegate selectionWillChange:self];
_selectedTextRange = selectedTextRange;
_lastTypeRange = _selectedTextRange.asRange;
[_inputDelegate selectionDidChange:self];
tq/YYKit/Text/YYTextView.m:3253: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3253, column 5. Accessing an ivar of an atomic property makes the property nonatomic
[_inputDelegate selectionWillChange:self];
_selectedTextRange = selectedTextRange;
_lastTypeRange = _selectedTextRange.asRange;
[_inputDelegate selectionDidChange:self];
tq/YYKit/Text/YYTextView.m:3245: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3245, column 36. Accessing an ivar of an atomic property makes the property nonatomic
if ([selectedTextRange isEqual:_selectedTextRange]) return;
[self _updateIfNeeded];
[self _endTouchTracking];
tq/YYKit/Text/YYTextView.m:3261: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3261, column 37. Accessing an ivar of an atomic property makes the property nonatomic
if (self.isFirstResponder) {
[self _scrollRangeToVisible:_selectedTextRange];
}
}
tq/YYKit/Text/YYTextView.m:3619: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3619, column 54. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3619: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3619, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2487: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2487, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2517: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2517, column 21. Accessing an ivar of an atomic property makes the property nonatomic
if (_selectedTextRange.asRange.length == 0 && self.isFirstResponder) {
if ([_selectionView isCaretContainsPoint:point]) { // track caret
_state.trackingCaret = YES;
tq/YYKit/Text/YYTextView.m:2698: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2698, column 42. Accessing an ivar of an atomic property makes the property nonatomic
if (_trackingRange && (![_trackingRange isEqual:_selectedTextRange] || _state.trackingPreSelect)) {
if (![_trackingRange isEqual:_selectedTextRange]) {
[_inputDelegate selectionWillChange:self];
_selectedTextRange = _trackingRange;
tq/YYKit/Text/YYTextView.m:2685: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2685, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2697: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2697, column 57. Accessing an ivar of an atomic property makes the property nonatomic
}
if (_trackingRange && (![_trackingRange isEqual:_selectedTextRange] || _state.trackingPreSelect)) {
if (![_trackingRange isEqual:_selectedTextRange]) {
[_inputDelegate selectionWillChange:self];
tq/YYKit/Text/YYTextView.m:2706: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2706, column 45. Accessing an ivar of an atomic property makes the property nonatomic
}
if (!_state.trackingGrabber && !_state.trackingPreSelect) {
[self _scrollRangeToVisible:_selectedTextRange];
}
}
tq/YYKit/Text/YYTextView.m:2700: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2700, column 17. Accessing an ivar of an atomic property makes the property nonatomic
if (![_trackingRange isEqual:_selectedTextRange]) {
[_inputDelegate selectionWillChange:self];
_selectedTextRange = _trackingRange;
[_inputDelegate selectionDidChange:self];
[self _updateAttributesHolder];
tq/YYKit/Text/YYTextView.m:2686: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2686, column 57. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2559: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 2559, column 30. Accessing an ivar of an atomic property makes the property nonatomic
} else {
_trackingRange = _selectedTextRange;
if (_state.trackingGrabber) {
self.panGestureRecognizer.enabled = NO;
tq/YYKit/Text/YYTextView.m:3353: warning: DIRECT_ATOMIC_PROPERTY_ACCESS
Direct access to ivar _selectedTextRange of an atomic property at line 3353, column 33. Accessing an ivar of an atomic property makes the property nonatomic
[self _updateOuterProperties];
[self _updateSelectionView];
[self _scrollRangeToVisible:_selectedTextRange];
}
tq/YYKit/Utility/YYReachability.m:136: warning: BAD_POINTER_COMPARISON
Implicitly checking whether NSNumber pointer is nil at line 136, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Image/YYAnimatedImageView.m:542: error: NULL_DEREFERENCE pointer self last assigned on line 541 could be null and is dereferenced at line 542, column 5
tq/YYKit/Image/YYAnimatedImageView.m:120: error: NULL_DEREFERENCE pointer self last assigned on line 119 could be null and is dereferenced at line 120, column 5
tq/YYKit/Image/YYAnimatedImageView.m:136: error: NULL_DEREFERENCE pointer self last assigned on line 135 could be null and is dereferenced at line 136, column 5
tq/YYKit/Image/YYAnimatedImageView.m:127: error: NULL_DEREFERENCE pointer self last assigned on line 126 could be null and is dereferenced at line 127, column 5
tq/YYKit/Image/YYAnimatedImageView.m:113: error: NULL_DEREFERENCE pointer self last assigned on line 112 could be null and is dereferenced at line 113, column 5
tq/YYKit/Utility/YYAsyncLayer.m:88: error: NULL_DEREFERENCE pointer self last assigned on line 81 could be null and is dereferenced at line 88, column 5
tq/YYKit/Image/YYImageCoder.m:692: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceGray() at line 692, column 36 is not reachable after line 692, column 21
tq/YYKit/Image/YYImageCoder.m:687: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 687, column 36 is not reachable after line 687, column 21
tq/YYKit/Image/YYImageCoder.m:1005: error: MEMORY_LEAK memory dynamically allocated to tmp.data by call to malloc() at line 987, column 16 is not reachable after line 1005, column 5
tq/YYKit/Image/YYImageCoder.m:934: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 934, column 81 is not reachable after line 934, column 9
tq/YYKit/Image/YYWebImageOperation.m:35: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 35, column 64 is not reachable after line 35, column 5
tq/YYKit/Model/YYClassInfo.m:260: error: NULL_DEREFERENCE pointer self last assigned on line 259 could be null and is dereferenced at line 260, column 5
tq/YYKit/Model/YYClassInfo.m:98: error: NULL_DEREFERENCE pointer self last assigned on line 97 could be null and is dereferenced at line 98, column 5
tq/YYKit/Model/YYClassInfo.m:119: error: NULL_DEREFERENCE pointer self last assigned on line 118 could be null and is dereferenced at line 119, column 5
tq/YYKit/Model/YYClassInfo.m:156: error: NULL_DEREFERENCE pointer self last assigned on line 155 could be null and is dereferenced at line 156, column 5
tq/YYKit/Utility/YYDispatchQueuePool.m:170: error: NULL_DEREFERENCE pointer self last assigned on line 168 could be null and is dereferenced at line 170, column 5
tq/YYKit/Utility/YYDispatchQueuePool.m:178: error: NULL_DEREFERENCE pointer self last assigned on line 177 could be null and is dereferenced at line 178, column 5
tq/YYKit/Image/YYImageCoder.m:2432: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 2432, column 75 is not reachable after line 2432, column 9
tq/YYKit/Image/YYImageCoder.m:2281: error: MEMORY_LEAK memory dynamically allocated by call to YYCGColorSpaceGetDeviceRGB() at line 2281, column 91 is not reachable after line 2281, column 17
tq/YYKit/Image/YYImageCoder.m:1727: error: NULL_DEREFERENCE pointer self last assigned on line 1724 could be null and is dereferenced at line 1727, column 5
tq/YYKit/Cache/YYKVStorage.m:793: error: MEMORY_LEAK memory dynamically allocated to self->_dbStmtCache by call to _dbOpen at line 789, column 10 is not reachable after line 793, column 14
tq/YYKit/Cache/YYKVStorage.m:765: error: NULL_DEREFERENCE pointer self last assigned on line 764 could be null and is dereferenced at line 765, column 5
tq/YYKit/Text/YYLabel.m:524: error: NULL_DEREFERENCE pointer self last assigned on line 520 could be null and is dereferenced at line 524, column 9
tq/YYKit/Cache/YYMemoryCache.m:201: error: MEMORY_LEAK memory dynamically allocated by call to block at line 201, column 5 is not reachable after line 201, column 5
tq/YYKit/Cache/YYMemoryCache.m:334: error: NULL_DEREFERENCE pointer self last assigned on line 332 could be null and is dereferenced at line 334, column 5
tq/YYKit/Text/String/YYTextAttribute.m:357: error: NULL_DEREFERENCE pointer self last assigned on line 356 could be null and is dereferenced at line 357, column 5
tq/YYKit/Text/String/YYTextAttribute.m:128: error: NULL_DEREFERENCE pointer self last assigned on line 127 could be null and is dereferenced at line 128, column 5
tq/YYKit/Text/String/YYTextAttribute.m:155: error: NULL_DEREFERENCE pointer self last assigned on line 154 could be null and is dereferenced at line 155, column 5
tq/YYKit/Text/String/YYTextAttribute.m:314: error: NULL_DEREFERENCE pointer self last assigned on line 313 could be null and is dereferenced at line 314, column 5
tq/YYKit/Text/Component/YYTextLayout.m:172: error: NULL_DEREFERENCE pointer self last assigned on line 171 could be null and is dereferenced at line 172, column 5
tq/YYKit/Text/String/YYTextAttribute.m:235: error: NULL_DEREFERENCE pointer self last assigned on line 234 could be null and is dereferenced at line 235, column 5
tq/YYKit/Text/String/YYTextAttribute.m:416: error: NULL_DEREFERENCE pointer self last assigned on line 413 could be null and is dereferenced at line 416, column 9
tq/YYKit/Text/String/YYTextRubyAnnotation.m:73: error: NULL_DEREFERENCE pointer self last assigned on line 72 could be null and is dereferenced at line 73, column 5
tq/YYKit/Text/String/YYTextRunDelegate.m:55: error: NULL_DEREFERENCE pointer self last assigned on line 54 could be null and is dereferenced at line 55, column 5
tq/YYKit/Text/String/YYTextAttribute.m:212: error: NULL_DEREFERENCE pointer self last assigned on line 211 could be null and is dereferenced at line 212, column 5
tq/YYKit/Text/String/YYTextParser.m:316: error: NULL_DEREFERENCE pointer self last assigned on line 315 could be null and is dereferenced at line 316, column 5
tq/YYKit/Text/String/YYTextParser.m:75: error: NULL_DEREFERENCE pointer self last assigned on line 74 could be null and is dereferenced at line 75, column 5
tq/YYKit/Text/YYTextView.m:1327: error: NULL_DEREFERENCE pointer start last assigned on line 1325 could be null and is dereferenced by call to rangeWithStart:end: at line 1327, column 12
tq/YYKit/Utility/YYTimer.m:48: error: NULL_DEREFERENCE pointer self last assigned on line 47 could be null and is dereferenced at line 48, column 5
tq/YYKit/Cache/YYMemoryCache.m:92: error: NULL_DEREFERENCE pointer self last assigned on line 91 could be null and is dereferenced at line 92, column 5
tq/YYKit/Text/Component/YYTextMagnifier.m:33: error: NULL_DEREFERENCE pointer self last assigned on line 32 could be null and is dereferenced at line 33, column 5
tq/YYKit/Text/Component/YYTextMagnifier.m:178: error: NULL_DEREFERENCE pointer self last assigned on line 177 could be null and is dereferenced at line 178, column 5
tq/YYKit/Image/Categories/UIButton+YYWebImage.m:51: error: NULL_DEREFERENCE pointer self last assigned on line 50 could be null and is dereferenced at line 51, column 5
tq/YYKit/Image/Categories/_YYWebImageSetter.m:30: error: NULL_DEREFERENCE pointer self last assigned on line 29 could be null and is dereferenced at line 30, column 5
tq/Log/LogServer/GCDWebServer/Responses/GCDWebServerStreamedResponse.m:55: warning: PARAMETER_NOT_NULL_CHECKED Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 55, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:897: warning: PARAMETER_NOT_NULL_CHECKED Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 897, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:914: warning: PARAMETER_NOT_NULL_CHECKED Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 914, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:938: warning: PARAMETER_NOT_NULL_CHECKED Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 938, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:358: warning: PARAMETER_NOT_NULL_CHECKED Parameter completionBlock is not checked for null, there could be a null pointer dereference: pointer completionBlock could be null and is dereferenced at line 358, column 5
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.m:325: error: MEMORY_LEAK memory dynamically allocated by call to block at line 325, column 7 is not reachable after line 325, column 7
tq/YYKit/Text/YYLabel.m:1114: warning: PARAMETER_NOT_NULL_CHECKED Parameter isCancelled is not checked for null, there could be a null pointer dereference: pointer isCancelled could be null and is dereferenced at line 1114, column 13
tq/YYKit/Base/YYKitMacro.h:298: warning: PARAMETER_NOT_NULL_CHECKED Parameter block is not checked for null, there could be a null pointer dereference: pointer block could be null and is dereferenced at line 298, column 9
tq/YYKit/Base/YYKitMacro.h:296: warning: PARAMETER_NOT_NULL_CHECKED Parameter block is not checked for null, there could be a null pointer dereference: pointer block could be null and is dereferenced at line 296, column 9
tq/YYKit/Model/NSObject+YYModel.m:790: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 790, column 9. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Model/NSObject+YYModel.m:115: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 115, column 9. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/String/YYTextAttribute.m:109: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 109, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:2903: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 2903, column 37. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:2932: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 2932, column 37. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:2253: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 2253, column 13. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/Log/LogServer/GCDWebServer/Core/GCDWebServer.h:289: warning: ASSIGN_POINTER_WARNING Property
delegate
is a pointer type marked with theassign
attribute at line 289, column 1. Use a different attribute likestrong
orweak
.tq/YYKit/Model/YYClassInfo.h:151: warning: ASSIGN_POINTER_WARNING Property
metaCls
is a pointer type marked with theassign
attribute at line 151, column 1. Use a different attribute likestrong
orweak
.tq/YYKit/Model/YYClassInfo.h:149: warning: ASSIGN_POINTER_WARNING Property
cls
is a pointer type marked with theassign
attribute at line 149, column 1. Use a different attribute likestrong
orweak
.tq/YYKit/Model/YYClassInfo.h:130: warning: ASSIGN_POINTER_WARNING Property
cls
is a pointer type marked with theassign
attribute at line 130, column 1. Use a different attribute likestrong
orweak
.tq/YYKit/Model/YYClassInfo.h:150: warning: ASSIGN_POINTER_WARNING Property
superCls
is a pointer type marked with theassign
attribute at line 150, column 1. Use a different attribute likestrong
orweak
.tq/YYKit/Text/YYTextView.m:771: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 771, column 41. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:251: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 251, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:202: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _costLimit of an atomic property at line 202, column 27. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:89: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 89, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:90: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 90, column 18. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:203: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _countLimit of an atomic property at line 203, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:261: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 261, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:264: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 264, column 18. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:204: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _ageLimit of an atomic property at line 204, column 26. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:288: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 288, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:448: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _costLimit of an atomic property at line 448, column 30. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1270: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1270, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1265: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1265, column 77. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2997: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2997, column 54. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:157: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customFileNameBlock of an atomic property at line 157, column 25. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:156: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customFileNameBlock of an atomic property at line 156, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1940: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1940, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1493: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1493, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1492: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1492, column 37. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1504: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1504, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1420: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1420, column 46. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1413, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1426: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1426, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1399: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1399, column 38. Accessing an ivar of an atomic property makes the property nonatomic
range
andtext
are valid before call this method.tq/YYKit/Text/YYTextView.m:1435: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1435, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1421: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1421, column 44. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1440: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1440, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1424: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1424, column 36. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1417: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1417, column 45. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1403: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1403, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1419: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1419, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1402: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1402, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1437: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1437, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1429: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1429, column 42. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1411: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1411, column 41. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1433: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1433, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1408: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1408, column 54. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1440: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1440, column 60. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1430: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1430, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1415: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1415, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1571: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1571, column 97. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1572: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1572, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1601: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1601, column 97. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1587: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1587, column 97. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1588: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1588, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:678: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 678, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:472: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 472, column 34. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:300: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 300, column 29. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Cache/YYDiskCache.m:80: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _autoTrimInterval of an atomic property at line 80, column 63. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:192: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _autoTrimInterval of an atomic property at line 192, column 63. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1454: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1454, column 69. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1454: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1454, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:226: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 226, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:1483: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 1483, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:262: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 262, column 34. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:420: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 420, column 72. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:419: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 419, column 83. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 413, column 99. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:412: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 412, column 74. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:412: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 412, column 101. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:413: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 413, column 74. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2835: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2835, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2851: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2851, column 20. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:212: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 212, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:208: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 208, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:54: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 54, column 56. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:54: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 54, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:65: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 65, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:60: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 60, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:82: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _fixedLineHeight of an atomic property at line 82, column 27. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2875: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2875, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2880: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2880, column 24. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3224: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3224, column 79. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3201: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3201, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3212: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3212, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3213: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3213, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3213: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3213, column 60. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3229: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3229, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:135: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 135, column 86. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:135: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 135, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:502: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 502, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:505: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _path of an atomic property at line 505, column 79. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:503: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _path of an atomic property at line 503, column 89. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:503: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 503, column 82. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Utility/YYKeychain.m:277: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 277, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Utility/YYKeychain.m:276: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 276, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Cache/YYMemoryCache.m:510: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 510, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:510: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _name of an atomic property at line 510, column 86. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Utility/YYKeychain.m:222: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 222, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Utility/YYKeychain.m:223: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 223, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Utility/YYAsyncLayer.m:104: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _displaysAsynchronously of an atomic property at line 104, column 25. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:280: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 280, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:236: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 236, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:233: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 233, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:228: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 228, column 27. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:71: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _allowAnimatedImage of an atomic property at line 71, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:73: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _decodeForDisplay of an atomic property at line 73, column 13. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:77: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _decodeForDisplay of an atomic property at line 77, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3192: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3192, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3196: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3196, column 24. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:766: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _cancelled of an atomic property at line 766, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:732: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _executing of an atomic property at line 732, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:749: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _finished of an atomic property at line 749, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Model/NSObject+YYModel.m:1645: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 1645, column 13. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
tq/YYKit/Text/Component/YYTextLayout.m:67: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _fixedLineHeight of an atomic property at line 67, column 99. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _fixedLineHeight of an atomic property at line 74, column 32. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _fixedLineHeight of an atomic property at line 74, column 51. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/Component/YYTextLayout.m:67: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _fixedLineHeight of an atomic property at line 67, column 80. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:72: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 72, column 19. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:70: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 70, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:74: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 74, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:263: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customUnarchiveBlock of an atomic property at line 263, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:264: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customUnarchiveBlock of an atomic property at line 264, column 18. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:88: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 88, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:82: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 82, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2943: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2943, column 34. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2945: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2945, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2958: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2958, column 32. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:119: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 119, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:118: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 118, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:123: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 123, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:124: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 124, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:130: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 130, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:129: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 129, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:195: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 195, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:197: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 197, column 10. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:108: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 108, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:109: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 109, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:114: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 114, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:113: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 113, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3408: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3408, column 37. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3416: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3416, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2970: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2970, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2967: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2967, column 67. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2966: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2966, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2984: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2984, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3611: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3611, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2149: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2149, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2163: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2163, column 37. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:756: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _cancelled of an atomic property at line 756, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:758: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _cancelled of an atomic property at line 758, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:724: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _executing of an atomic property at line 724, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:722: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _executing of an atomic property at line 722, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:739: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _finished of an atomic property at line 739, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYWebImageOperation.m:741: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _finished of an atomic property at line 741, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:149: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 149, column 18. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Image/YYImageCache.m:173: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 173, column 14. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3298: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3298, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3317: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3317, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3341: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3341, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3308: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3308, column 58. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3309: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3309, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3317: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3317, column 52. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3286: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3286, column 40. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3314: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3314, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3299: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3299, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3280: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3280, column 83. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3307: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3307, column 68. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3334: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3334, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3309: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3309, column 70. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:98: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 98, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:99: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 99, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:316: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _inlineThreshold of an atomic property at line 316, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:302: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customArchiveBlock of an atomic property at line 302, column 9. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYDiskCache.m:303: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _customArchiveBlock of an atomic property at line 303, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:104: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _diskCache of an atomic property at line 104, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYCache.m:103: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _memoryCache of an atomic property at line 103, column 6. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:451: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _countLimit of an atomic property at line 451, column 29. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Cache/YYMemoryCache.m:446: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _costLimit of an atomic property at line 446, column 28. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2252: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2252, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3254: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3254, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3253: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3253, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3245: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3245, column 36. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3261: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3261, column 37. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3619: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3619, column 54. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3619: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3619, column 5. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2487: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2487, column 22. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2517: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2517, column 21. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2698: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2698, column 42. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2685: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2685, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2697: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2697, column 57. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2706: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2706, column 45. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2700: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2700, column 17. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2686: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2686, column 57. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:2559: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 2559, column 30. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Text/YYTextView.m:3353: warning: DIRECT_ATOMIC_PROPERTY_ACCESS Direct access to ivar _selectedTextRange of an atomic property at line 3353, column 33. Accessing an ivar of an atomic property makes the property nonatomic
tq/YYKit/Utility/YYReachability.m:136: warning: BAD_POINTER_COMPARISON Implicitly checking whether NSNumber pointer is nil at line 136, column 5. Did you mean to compare against the unboxed value instead? Please either explicitly compare the NSNumber instance to nil, or use one of the NSNumber accessors before the comparison.
Summary of the reports
DIRECT_ATOMIC_PROPERTY_ACCESS: 180 NULL_DEREFERENCE: 35 BAD_POINTER_COMPARISON: 13 MEMORY_LEAK: 10 PARAMETER_NOT_NULL_CHECKED: 9 ASSIGN_POINTER_WARNING: 5 IVAR_NOT_NULL_CHECKED: 1