Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Null Array Parameter is persisted as an Array containing a single element, which is null #466

Open
NicoKiaru opened this issue Jul 13, 2023 · 1 comment

Comments

@NicoKiaru
Copy link
Contributor

I have a command with a non-required array parameter:

	@Parameter(label = "Select Bvv Windows to synchronize", required = false)
	BvvHandle[] bvvhs;

Before, when nothing was set, bvvhs was returned as a null object. Now, when bvvhs is not set, the parameter is set to an array of size 1, with the element being a null object.

It's a change of behaviour which breaks a few things in my code. It's probably manageable, but the current behaviour needs to be changed:

return null is fine, returning an empty array is probably also fine, but returning a one-element array with null inside do not look good.

FYI, I checked in the prefs how the parameter is remembered, and this is how it looks:

image

I think it should be:

image

Related as mentioned by @ctrueden:

#450
ce135b7

Original forum thread:
https://forum.image.sc/t/change-of-behaviour-in-scijava-parameter-table-of-size-one-with-null-object-inside-instead-of-null-object/83625/2


It does not look like a critical issue, but it might pop here and there

@imagesc-bot
Copy link

This issue has been mentioned on Image.sc Forum. There might be relevant details there:

https://forum.image.sc/t/change-of-behaviour-in-scijava-parameter-table-of-size-one-with-null-object-inside-instead-of-null-object/83625/4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants