You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I was investigating random crash in our application and found that in daemon_cl.cpp we initialize portInit.index = 0; and this value is ussed to register port in clock:
This cause that we modify port_list at index '-1' and increase number_ports.
In constructor I set all port_list to the NULL which help me to found this issue.
After that port_list is used in CommonPort::processStateChange(Event e)
Here we try to get some values from port which was registered in the wrong way.
If there is NULL j index is 33 and we get some garbage values. If port_list was not initialized with NULLs we also get some garbage. Here we get the crash.
Potential fixes is to not allow to registerPort with index less then 1 or do not substract 1.
I'll be very glad to get some feedback if this is the issue of the daemon_cl sample.
The text was updated successfully, but these errors were encountered:
Hi,
I was investigating random crash in our application and found that in daemon_cl.cpp we initialize
portInit.index = 0;
and this value is ussed to register port in clock:This cause that we modify port_list at index '-1' and increase number_ports.
In constructor I set all port_list to the NULL which help me to found this issue.
After that port_list is used in
CommonPort::processStateChange(Event e)
Here we try to get some values from port which was registered in the wrong way.
If there is NULL j index is 33 and we get some garbage values. If port_list was not initialized with NULLs we also get some garbage. Here we get the crash.
Potential fixes is to not allow to registerPort with index less then 1 or do not substract 1.
I'll be very glad to get some feedback if this is the issue of the daemon_cl sample.
The text was updated successfully, but these errors were encountered: