Browse Source

[exit] 修复_exit函数条件分支未覆盖所有情况的问题 (#6239)

attach #6229
Man, Jianting (Meco) 2 years ago
parent
commit
8da744a750
1 changed files with 5 additions and 3 deletions
  1. 5 3
      components/libc/compilers/common/cstdlib.c

+ 5 - 3
components/libc/compilers/common/cstdlib.c

@@ -20,16 +20,18 @@ void __rt_libc_exit(int status)
 
     if (self != RT_NULL)
     {
+        LOG_W("thread:%s exit:%d!", self->name, status);
 #ifdef RT_USING_PTHREADS
         if(self->pthread_data != RT_NULL)
         {
             extern void pthread_exit(void *value);
             pthread_exit((void *)status);
         }
-#else
-        LOG_E("thread:%s exit:%d!", self->name, status);
-        rt_thread_control(self, RT_THREAD_CTRL_CLOSE, RT_NULL);
+        else
 #endif
+        {
+            rt_thread_control(self, RT_THREAD_CTRL_CLOSE, RT_NULL);
+        }
     }
 }