@@ -394,47 +394,47 @@ int env_permafreeze_direct(Env* env, const char* name) {
394394/* ================================================================== */
395395
396396bool env_define (Env * env , const char * name , DeclType type ) {
397- if (ns_buffer_active ())
397+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
398398 return ns_buffer_define (env , name , type );
399399 return env_define_direct (env , name , type );
400400}
401401
402402bool env_assign (Env * env , const char * name , Value value ,
403403 DeclType type , bool declare_if_missing ) {
404- if (ns_buffer_active ())
404+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
405405 return ns_buffer_assign (env , name , value , type , declare_if_missing );
406406 return env_assign_direct (env , name , value , type , declare_if_missing );
407407}
408408
409409bool env_delete (Env * env , const char * name ) {
410- if (ns_buffer_active ())
410+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
411411 return ns_buffer_delete (env , name );
412412 return env_delete_direct (env , name );
413413}
414414
415415bool env_set_alias (Env * env , const char * name , const char * target_name ,
416416 DeclType type , bool declare_if_missing ) {
417- if (ns_buffer_active ())
417+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
418418 return ns_buffer_set_alias (env , name , target_name , type ,
419419 declare_if_missing );
420420 return env_set_alias_direct (env , name , target_name , type ,
421421 declare_if_missing );
422422}
423423
424424int env_freeze (Env * env , const char * name ) {
425- if (ns_buffer_active ())
425+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
426426 return ns_buffer_freeze (env , name );
427427 return env_freeze_direct (env , name );
428428}
429429
430430int env_thaw (Env * env , const char * name ) {
431- if (ns_buffer_active ())
431+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
432432 return ns_buffer_thaw (env , name );
433433 return env_thaw_direct (env , name );
434434}
435435
436436int env_permafreeze (Env * env , const char * name ) {
437- if (ns_buffer_active ())
437+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () )
438438 return ns_buffer_permafreeze (env , name );
439439 return env_permafreeze_direct (env , name );
440440}
@@ -447,7 +447,7 @@ int env_permafreeze(Env* env, const char* name) {
447447
448448EnvEntry * env_get_entry (Env * env , const char * name ) {
449449 EnvEntry * snap = env_entry_snap_alloc ();
450- if (ns_buffer_active ()) {
450+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () ) {
451451 ns_buffer_read_lock (name );
452452 EnvEntry * entry = env_get_entry_raw (env , name );
453453 env_entry_snap_from_raw (snap , entry );
@@ -471,7 +471,7 @@ EnvEntry* env_get_entry(Env* env, const char* name) {
471471
472472bool env_get (Env * env , const char * name , Value * out_value ,
473473 DeclType * out_type , bool * out_initialized ) {
474- if (ns_buffer_active ()) {
474+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () ) {
475475 ns_buffer_read_lock (name );
476476 bool r = env_get_raw (env , name , out_value , out_type , out_initialized );
477477 ns_buffer_read_unlock ();
@@ -481,7 +481,7 @@ bool env_get(Env* env, const char* name, Value* out_value,
481481}
482482
483483bool env_exists (Env * env , const char * name ) {
484- if (ns_buffer_active ()) {
484+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () ) {
485485 ns_buffer_read_lock (name );
486486 bool r = env_exists_raw (env , name );
487487 ns_buffer_read_unlock ();
@@ -491,7 +491,7 @@ bool env_exists(Env* env, const char* name) {
491491}
492492
493493int env_frozen_state (Env * env , const char * name ) {
494- if (ns_buffer_active ()) {
494+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () ) {
495495 ns_buffer_read_lock (name );
496496 int r = env_frozen_state_raw (env , name );
497497 ns_buffer_read_unlock ();
@@ -501,7 +501,7 @@ int env_frozen_state(Env* env, const char* name) {
501501}
502502
503503int env_permafrozen (Env * env , const char * name ) {
504- if (ns_buffer_active ()) {
504+ if (ns_buffer_active () && ! ns_buffer_is_prepare_thread () ) {
505505 ns_buffer_read_lock (name );
506506 int r = env_permafrozen_raw (env , name );
507507 ns_buffer_read_unlock ();
0 commit comments