]> Nishi Git Mirror - gwion.git/commitdiff
:bug: Fix cleaning
authorfennecdjay <fennecdjay@gmail.com>
Tue, 26 Jul 2022 16:35:49 +0000 (18:35 +0200)
committerfennecdjay <fennecdjay@gmail.com>
Tue, 26 Jul 2022 16:35:49 +0000 (18:35 +0200)
src/env/env.c
src/gwion.c

index 2f13a128c8c7e45d27f6270e365b8e4f0ad43cf8..ded3a4f72ac888e0cae59b04ec4ebedc17855c93 100644 (file)
@@ -81,8 +81,8 @@ ANN void env_add_effect(const Env a, const Symbol effect, const loc_t pos) {
 }
 
 ANN void free_env(const Env a) {
-  free_env_scope(a->scope, a->gwion);
   pop_global(a->gwion);
+  free_env_scope(a->scope, a->gwion);
   mp_free(a->gwion->mp, Env, a);
 }
 
index 4ca0239da33735f80eb4ab559279973753317cde..1c28cca0816ba6f9fad0b4558b872862031d3a34 100644 (file)
@@ -243,7 +243,8 @@ ANN void push_global(struct Gwion_ *gwion, const m_str name) {
 }
 
 ANN void pop_global(const Gwion gwion) {
-   Nspc nspc = gwion->env->global_nspc, parent;
+   Nspc nspc = gwion->env->global_nspc->parent, parent;
+//   Nspc nspc = gwion->env->global_nspc, parent;
    do {
      parent = nspc->parent;
      nspc_remref(nspc, gwion);