From 6003f6ac5f0ed9097571fd69a170d5cd33aeac28 Mon Sep 17 00:00:00 2001 From: IntMatrix Date: Wed, 19 Feb 2020 11:01:32 +0200 Subject: [PATCH] Avoid division by zero --- .../IBPCollectionCompositionalLayoutSolver.m | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Sources/IBPCollectionViewCompositionalLayout/IBPCollectionCompositionalLayoutSolver.m b/Sources/IBPCollectionViewCompositionalLayout/IBPCollectionCompositionalLayoutSolver.m index 9c2e026..eac5f18 100644 --- a/Sources/IBPCollectionViewCompositionalLayout/IBPCollectionCompositionalLayoutSolver.m +++ b/Sources/IBPCollectionViewCompositionalLayout/IBPCollectionCompositionalLayoutSolver.m @@ -387,7 +387,10 @@ - (void)solveGroup:(IBPNSCollectionLayoutGroup *)group forContainer:(IBPNSCollec - (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath { NSArray *results = self.results; NSInteger count = results.count; - + if (count == 0) { + return nil; + } + CGFloat interGroupSpacing = self.layoutSection.interGroupSpacing; CGPoint offset = CGPointZero; @@ -416,6 +419,10 @@ - (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSInde - (IBPNSCollectionLayoutItem *)layoutItemAtIndexPath:(NSIndexPath *)indexPath { NSArray *results = self.results; + if (results.count == 0) { + return nil; + } + IBPCollectionCompositionalLayoutSolverResult *result = [results objectAtIndex:indexPath.item % results.count]; return result.layoutItem; }