Fixed a crash due to alfred avatar displaying

This commit is contained in:
Sunnyyoung 2018-10-26 19:59:58 +08:00
parent e1bc524ec3
commit 8e259e3e8e
2 changed files with 10 additions and 2 deletions

View File

@ -28,6 +28,12 @@
@end
@interface PathUtility : NSObject
+ (NSString *)GetCurUserDocumentPath;
@end
@interface MMSearchResultItem : NSObject
@property(nonatomic) unsigned long long type; // 0 is single chat, 1 is group chat

View File

@ -206,8 +206,10 @@ static void __attribute__((constructor)) tweak(void) {
#pragma mark - WCContact Data
- (NSString *)wt_avatarPath {
MMAvatarService *avatarService = [[objc_getClass("MMServiceCenter") defaultCenter] getService:objc_getClass("MMAvatarService")];
NSString *pathString = [NSString stringWithFormat:@"%@/%@", [avatarService avatarCachePath], [((WCContactData *)self).m_nsHeadImgUrl md5String]];
if (![objc_getClass("PathUtility") respondsToSelector:@selector(GetCurUserDocumentPath)]) {
return @"";
}
NSString *pathString = [NSString stringWithFormat:@"%@/Avatar/%@.jpg", [objc_getClass("PathUtility") GetCurUserDocumentPath], [((WCContactData *)self).m_nsUsrName md5String]];
return [NSFileManager.defaultManager fileExistsAtPath:pathString] ? pathString : @"";
}