Commit ce8d22825a524703be4fd19de04df794bc9defa1

Thomas de Grivel 2024-09-21T03:07:39

fix closures

diff --git a/libkc3/frame.c b/libkc3/frame.c
index 47d5796..a6d6a3b 100644
--- a/libkc3/frame.c
+++ b/libkc3/frame.c
@@ -130,6 +130,10 @@ const s_tag * frame_get (const s_frame *frame, const s_sym *sym)
     result = binding_get(f->bindings, sym);
     if (result)
       return result;
+    f = f->next;
+  }
+  f = frame;
+  while (f) {
     if (f->fn_frame) {
       result = frame_get(f->fn_frame, sym);
       if (result)
@@ -150,6 +154,10 @@ s_tag * frame_get_w (s_frame *frame, const s_sym *sym)
     result = binding_get_w(f->bindings, sym);
     if (result)
       return result;
+    f = f->next;
+  }
+  f = frame;
+  while (f) {
     if (f->fn_frame) {
       result = frame_get_w(f->fn_frame, sym);
       if (result)