From f90bf3bea1d3bae068ea6bba3f942d052fc4f96d Mon Sep 17 00:00:00 2001 From: Brent Simmons Date: Wed, 18 Oct 2017 18:13:49 -0700 Subject: [PATCH] =?UTF-8?q?Rename=20childrenContainsFeed=20to=20childrenCo?= =?UTF-8?q?ntain.=20Add=20assertionFailure=20=E2=80=94=20expecting=20point?= =?UTF-8?q?er=20equality.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Frameworks/Account/Folder.swift | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Frameworks/Account/Folder.swift b/Frameworks/Account/Folder.swift index ec6b05c7a..e10f5ed4b 100644 --- a/Frameworks/Account/Folder.swift +++ b/Frameworks/Account/Folder.swift @@ -109,13 +109,11 @@ public final class Folder: DisplayNameProvider, Container, UnreadCountProvider { func addFeed(_ feed: Feed) -> Bool { - // The feed has been uniqued at this point. // Return true in the case where the feed is already a child. - if childrenContainsFeed(feed) { - return true + if !childrenContain(feed) { + children += [feed] } - children += [feed] return true } @@ -141,11 +139,15 @@ private extension Folder { unreadCount = calculateUnreadCount(children) } - func childrenContainsFeed(_ feed: Feed) -> Bool { + func childrenContain(_ feed: Feed) -> Bool { return children.contains(where: { (object) -> Bool in + if object === feed { + return true + } if let oneFeed = object as? Feed { if oneFeed.feedID == feed.feedID { + assertionFailure("Expected feeds to match by pointer equality rather than by feedID.") return true } }