03-17-2016 10:15 AM
There appears to be a serious issue with how Call Library Function Nodes interact with auto-indexing tunnels in For Loops when at least one parameter in the CLFN is set to AdaptToType. When you save a VI configured in this way, LabVIEW does a hard crash with a memory exception. If there's not already a CAR associated with this behavior, I'd like for one to be filed and the CAR number posted here. I didn't see this reported anywhere else after a cursory search, but maybe I'm wrong.
In the attached example I just pulled a random function from the user32.dll and created an arbitrary parameter in order to demonstrate the behavior. I am very much aware the parameter is invalid, but the same behavior occurs when using a properly configured parameter which matches the .dll being called (for example, we encountered this while using the LV RTI DDS toolkit). I'm presenting it this way in the example so no additional toolkits need to be installed to reproduce.
LabVIEW crash error: DAbort 0x24D61F21 in LVClusterInterface.cpp
Windows 7 64-bit
LabVIEW 2015
03-17-2016 11:31 AM
What does the DLL function do with the cluster it receives?
03-17-2016 11:47 AM - edited 03-17-2016 11:49 AM
In the example, nothing. In the DDS toolkit, it creates a topic with the provided data type. However, this is all tangential to the issue at hand, which I guess I probably should have drawn more attention to: the crash happens when you Save the VI. Running it is not required.
03-17-2016 08:57 PM
Really strange, I couldn't find any related CARs so I'll make one when I get in tomorrow. The exception seemed to be specifically calling out clusters so I tried some stuff on my own and found that it will only crash if you are auto-indexing an array of clusters. If you are just indexing an array of strings or numerics LabVIEW will save but once you add a cluster LabVIEW will crash.
Good catch! Thank you for posting the workaound that you were able to find in the original post as well
03-18-2016 08:40 AM
Thanks, Matt. Glad to know it's at least limited to clusters, too.
03-18-2016 11:51 AM
CAR 578947: Saving VI With Auto-Indexed Cluster Connected to CLFN Configured as Adapt to Type Crashes With DAbort 0x24D61F21
Coming up with a name is the hardest part of this process.