z-stack home 1.2.2a,zcl.c文件疑似bug,请TI工程师确认bug。
时间:10-02
整理:3721RD
点击:
bug函数:zcl_event_loop
bug代码定位:
if ( *msgPtr == AF_INCOMING_MSG_CMD ) { zcl_ProcessMessageMSG( (afIncomingMSGPacket_t *)msgPtr ); } else { uint8 taskID; taskID = zcl_getExternalFoundationHandler( (afIncomingMSGPacket_t *)msgPtr ); if ( taskID != TASK_NO_TASK ) { // send it to another task to process. osal_msg_send( taskID, msgPtr ); dealloc = FALSE; } }
Bug说明:在zcl中,此处为osal msg的处理。由ZCL的task处理函数处理的消息,通常发给zcl_event_loop的消息,只有AF_DATA_CONFIRM_CMD。如果依然按照afIncomingMSGPacket_t 的结构去处理消息AF_DATA_CONFIRM_CMD消息,必然会获得一个错误的Endpoint值。
af data cnf 不会到这个event loop下进行处理的