In function ttiCreateCstInfoEntry when coping vehicle info, closed train info, ETB info from telegram to TTDB the index is not used so it store the data at index 0 for all cars.
Old sources:
/ copy the vehicle list /
for (idx = 0u; idx < pDest->vehCnt; idx++)
{
memcpy(pDest->pVehInfoList->vehId, pData, sizeof(TRDP_NET_LABEL_T));
pData += sizeof(TRDP_NET_LABEL_T);
memcpy(pDest->pVehInfoList->vehType, pData, sizeof(TRDP_NET_LABEL_T));
pData += sizeof(TRDP_NET_LABEL_T);
pDest->pVehInfoList->vehOrient = *pData++;
....
....
Expected sources:
/ copy the vehicle list /
for (idx = 0u; idx < pDest->vehCnt; idx++)
{
memcpy(pDest->pVehInfoList[idx].vehId, pData, sizeof(TRDP_NET_LABEL_T));
...
....
Changed accordingly. To be tested.
Diff:
Changed accordingly. To be tested.
Tested in api_test_4.c test3
Last edit: Stefan Bender 2021-08-11