Using Trace Logging in the NetSim API caused the exception supplementalData.size() > 0
Description
This was the case because the controllerType (by name) was not saved on the supplemental data of the mirrored controller in the NetSim API when a new controller got discovered.
With log level Trace, the mirrored controller then caused the exeption when trying to log the controller type in its service descriptor.
Finally, the exception got catched in the hourglass CAPI_CATCH_EXCEPTIONS.
Fixed by writing the controller type in the suppl. info map of the mirrored controller. Also made the exception more specific.
Instructions for review / testing
Code Review
Build this branch, make sure the NetSim uses the SilKit.dll with the fix.
Run a Demo with NetSim and -l trace on the Netsim.exe (or via trace lvl in the participant config). No exception must appear.
Developer checklist (address before review)
[x] Changelog.md updated
[ ] Prepared update for depending repositories
[ ] Documentation updated (public API changes only)
[ ] API docstrings updated (public API changes only)
Subject
Using Trace Logging in the NetSim API caused the exception
supplementalData.size() > 0
Description
This was the case because the controllerType (by name) was not saved on the supplemental data of the mirrored controller in the NetSim API when a new controller got discovered.
With log level Trace, the mirrored controller then caused the exeption when trying to log the controller type in its service descriptor.
Finally, the exception got catched in the hourglass
CAPI_CATCH_EXCEPTIONS
.Fixed by writing the controller type in the suppl. info map of the mirrored controller. Also made the exception more specific.
Instructions for review / testing
-l trace
on the Netsim.exe (or via trace lvl in the participant config). No exception must appear.Developer checklist (address before review)