ソースを参照

fix: 修复env的status_lock未初始化问题

SongZihuan 3 年 前
コミット
3d2b6cfd6a
1 ファイル変更3 行追加1 行削除
  1. 3 1
      src/core/env.c

+ 3 - 1
src/core/env.c

@@ -875,6 +875,9 @@ af_Environment *makeEnvironment(enum GcRunTime grt) {
     pthread_mutex_init(&env->in_run, &attr);  // 检测锁
     pthread_mutexattr_destroy(&attr);
 
+    pthread_mutex_init(&env->thread_lock, NULL);
+    pthread_mutex_init(&env->status_lock, NULL);
+
     env->is_derive = false;
     env->base = env;
 
@@ -925,7 +928,6 @@ af_Environment *makeEnvironment(enum GcRunTime grt) {
 
     env->status = core_init;
     env->activity = makeTopActivity(NULL, NULL, env->protect, env->global);
-    pthread_mutex_init(&env->thread_lock, NULL);
     return env;
 }