Fix NullPointerException triggered by calling imgLabeling.getType() #73
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.
The bug was discovered by compiling and testing Labkit against imglib2-7.1. Trying to use the brush in Labkit would trigger this NullPointerException.
I'm unsure about the rules for implementing the new getType() so please have a closer look at my suggested change and whether is correct.
I also noticed that (A)
imgLabeling.getType().createVariable()
would behave differently than (B)imgLabeling.randomAccess().get().createVariable()
. (A) creates a LabelingType with a independent LabelMapping while (B) creates a LabelingType with the same LabelMapping as the imgLabeling. In Labkit I'm now using implementation (B) because a need the same LabelMapping in order for LabelingType.set(...) to work properly.