From 3b1462cbe1af788e096fd3db98238343c96db222 Mon Sep 17 00:00:00 2001 From: Benoit Martins Date: Wed, 12 Jul 2023 17:00:14 +0200 Subject: [PATCH] Check if contactAddress.friend is not nil --- Classes/Swift/Voip/Widgets/Avatar.swift | 30 ++++++++++++------------- 1 file changed, 14 insertions(+), 16 deletions(-) diff --git a/Classes/Swift/Voip/Widgets/Avatar.swift b/Classes/Swift/Voip/Widgets/Avatar.swift index c3d2837ac..a684c8519 100644 --- a/Classes/Swift/Voip/Widgets/Avatar.swift +++ b/Classes/Swift/Voip/Widgets/Avatar.swift @@ -147,19 +147,21 @@ class Avatar : UIView { } } if delegatePresence == false { - friend.append(Friend.getSwiftObject(cObject: (contactAddress.friend)!)) - let newFriendDelegate = FriendDelegateStub( - onPresenceReceived: { (linphoneFriend: Friend) -> Void in - if (linphoneFriend.address?.asStringUriOnly()) != nil { - let presenceModel = linphoneFriend.getPresenceModelForUriOrTel(uriOrTel: (linphoneFriend.address?.asStringUriOnly())!) - if(presenceModel != nil && presenceModel?.consolidatedPresence != nil){ - NotificationCenter.default.post(name: Notification.Name("LinphoneFriendPresenceUpdate"), object: nil, userInfo: ["friend": linphoneFriend.address?.asStringUriOnly() ?? "", "isOnline": presenceModel!.consolidatedPresence.rawValue == LinphoneConsolidatedPresenceOnline.rawValue]) + if contactAddress.friend != nil { + friend.append(Friend.getSwiftObject(cObject: (contactAddress.friend)!)) + let newFriendDelegate = FriendDelegateStub( + onPresenceReceived: { (linphoneFriend: Friend) -> Void in + if (linphoneFriend.address?.asStringUriOnly()) != nil { + let presenceModel = linphoneFriend.getPresenceModelForUriOrTel(uriOrTel: (linphoneFriend.address?.asStringUriOnly())!) + if(presenceModel != nil && presenceModel?.consolidatedPresence != nil){ + NotificationCenter.default.post(name: Notification.Name("LinphoneFriendPresenceUpdate"), object: nil, userInfo: ["friend": linphoneFriend.address?.asStringUriOnly() ?? "", "isOnline": presenceModel!.consolidatedPresence.rawValue == LinphoneConsolidatedPresenceOnline.rawValue]) + } } - } - } - ) - friendDelegate.append(newFriendDelegate) - friend.last?.addDelegate(delegate: friendDelegate.last!) + } + ) + friendDelegate.append(newFriendDelegate) + friend.last?.addDelegate(delegate: friendDelegate.last!) + } } } @@ -202,12 +204,8 @@ class Avatar : UIView { let contactAddress = Address.getSwiftObject(cObject: address).contact() var iconPresenceView = UIImageView() if (contactAddress != nil) { - - shared?.addDelegate(contactAddress: contactAddress!) - iconPresenceView = updatePresenceImage(contact: contactAddress!) - avatarWithPresence.addSubview(avatarImageWihtoutPresence) avatarWithPresence.addSubview(iconPresenceView) iconPresenceView.frame = CGRect(x: 36, y: 36, width: 14, height: 14)