Fix: Don't try to retrieve next set of items when using an iterator, if no next items are expected to exist #337
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We use this library to retrieve Sharepoint lists and came across a crash when using the
getAll()
method ofClientObjectCollection
.Symptoms
When using
foreach
on aListItemCollection
, the following error occurs:Cause
I believe this is because we're using a
foreach
which is causinggetIterator
to be called and that is trying to retrieve the next set of items before it checks whether there are any more items to retrieve.Fix
Simple - I just moved the line which retrieves the items inside the conditional which checks whether items are expected to exist.
Tests
I'm happy to add a test somewhere if someone can give me a pointer to the relevant test case.