I'm using NDDS v4.2e.
I am getting an exception when trying to narrow() a DDSDataReader, given to me in an on_data_available callback. I'm assuming the pointer I am given is bad?! Does narrow() throw an exception (rather than simply return a NULL) if the pointer is wrong? I've been using this on_data_available() callback for years so I'm assuming its okay. Maybe a bit weak coping with this situation.
What I am struggling with is understanding why my on_data_available callback is being called at all by DDS. It occurs when I delete a matching publisher. Looking at the Call Stack within Visual Studio, I'm seeing stack-trace as the attached. It suggests the removal of the end-point is causing the on-data-available call but I cannot be sure its not my programming elsewhere which has corrupted something.
Am I missing a setting to prevent NDDS translating an endpoint removal from causing this callback? Is there such a setting?
Any pointers or help much appreciated. Thanks.
Attachment | Size |
---|---|
ndds4_2e_stacktrace.txt | 3.62 KB |