Catch/prevent null values in chargeLimits #452
Merged
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.
In debugging #451, it appears there's a way for the outside limit to be saved as
null
. The first commit should prevent any exceptions being thrown when that process encounters one that's already stored.The second heads off the path that looks like it could store a
null
/None
in a particular corner case: Vehicle reports ready, but updating location fails. Rather than storing the result and checking whether location was successful at multiple places, it just bails if the location couldn't be updated. It will run again shortly anyway.There's also a surprisingly long path through the logic for a car that was and remains absent, and I'm not sure it doesn't update the data stored in settings. I added a short-circuit for that case, just to be safe.