Przeglądaj źródła

适配5.0.0 rt_thread结构体显示继承rt_object

修改 task.c 编译错误,目前struct rt_thread结构体已无type和name字段,而是显式继承struct rt_object结构体,见 [kernel] 将rt_thread结构体改为显式继承rt_object
WCX 2 lat temu
rodzic
commit
fc10b76c0e
1 zmienionych plików z 9 dodań i 1 usunięć
  1. 9 1
      FreeRTOS/tasks.c

+ 9 - 1
FreeRTOS/tasks.c

@@ -147,7 +147,11 @@ static void prvInitialiseNewTask( TaskFunction_t pxTaskCode,
                 prvInitialiseNewTask( pxTaskCode, pcName, ( uint32_t ) usStackDepth, pvParameters, uxPriority, pxCreatedTask, pxNewTCB, ( StackType_t * ) stack_start );
                 prvInitialiseNewTask( pxTaskCode, pcName, ( uint32_t ) usStackDepth, pvParameters, uxPriority, pxCreatedTask, pxNewTCB, ( StackType_t * ) stack_start );
                 xReturn = pdPASS;
                 xReturn = pdPASS;
                 /* Mark as dynamic */
                 /* Mark as dynamic */
-                ( ( struct rt_thread * ) pxNewTCB )->type &= ~RT_Object_Class_Static;
+#if RT_VER_NUM < 0x50000
+                ( ( struct rt_thread * ) pxNewTCB )-> type &= ~RT_Object_Class_Static;
+#else
+                ( ( struct rt_thread * ) pxNewTCB )-> parent.type &= ~RT_Object_Class_Static;
+#endif /* RT_VER_NUM < 0x50000 */
                 rt_thread_startup( ( rt_thread_t ) pxNewTCB );
                 rt_thread_startup( ( rt_thread_t ) pxNewTCB );
             }
             }
             else
             else
@@ -556,7 +560,11 @@ UBaseType_t uxTaskGetNumberOfTasks( void )
 char * pcTaskGetName( TaskHandle_t xTaskToQuery )
 char * pcTaskGetName( TaskHandle_t xTaskToQuery )
 {
 {
     rt_thread_t thread = ( rt_thread_t ) prvGetTCBFromHandle( xTaskToQuery );
     rt_thread_t thread = ( rt_thread_t ) prvGetTCBFromHandle( xTaskToQuery );
+#if RT_VER_NUM < 0x50000
     return &( thread->name[ 0 ] );
     return &( thread->name[ 0 ] );
+#else
+    return &( thread->parent.name[ 0 ] );
+#endif /* RT_VER_NUM < 0x50000 */
 }
 }
 /*-----------------------------------------------------------*/
 /*-----------------------------------------------------------*/