Annotating an IOBox String to Spread<String> throws exception on b38

On b38, when creating an IOBox (String) via double right-clic menu and changing its type to Spread<String>, the following exception pops : System.InvalidCastException: Unable to cast object of type 'VL.Lib.Collections.Spread 1[System.String]' to type 'System.String'. Full log is here.

Steps to reproduce :

  • Create a new VL document
  • Create an IOBox String via double right-clic menu
  • Change its type to Spread<String> via middle-clic
  • Exception pops right away
  • After the exception has popped, the IOBox is filled with :

image

See the following gif :

spread_b38

  • The same thing does not happen if I create an IOBox (Float32) and change its type to Spread<Float32>.
  • Tested on two different machines, same behavior
  • This behavior does not happen on b37

Can anyone confirm ?

Thanks for the report. As a workaround until this is fixed I’d recommend creating a Generic IO box first and then do the type annotation. The exception only seems to come up when going from one type to another.

Hei Elias,

Thanks for your answer.

Why doesn’t it happen if I do Float32 to Spread<Float32> then ?

Also, annotating a generic IOBox to Spread acts weird, see gif :

spread_b38_generic

Looks like it’s creating an empty slice for each character I’ve typed : “a,b,c” = 5 slices.

EDIT : on the other hand, annotating a generic IOBox to Spread<Float32> behaves normally.

Funny. Well I’ll need to investigate and basically fix what you describe. Thanks again, will report back once done.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.