commit bf214d4

default  ·  2022-11-21 07:04:22 +0000 UTC
parent c78574c
In _timeline_write(), limit the number of grampa levels updated.
1 files changed,  +9, -0
M data.c
M data.c
+9, -0
 1@@ -517,6 +517,8 @@ int _timeline_write(snac *snac, char *id, char *msg, char *parent, char *referre
 2         /* now iterate all parents up, just renaming the files */
 3         xs *grampa = xs_dup(xs_dict_get(meta, "parent"));
 4 
 5+        int max_levels = 10;
 6+
 7         while (!xs_is_null(grampa)) {
 8             xs *gofn = _timeline_find_fn(snac, grampa);
 9 
10@@ -555,6 +557,13 @@ int _timeline_write(snac *snac, char *id, char *msg, char *parent, char *referre
11                 xs_free(grampa);
12                 grampa = xs_dup(p);
13             }
14+            else
15+                break;
16+
17+            if (--max_levels == 0) {
18+                snac_log(snac, xs_dup("_timeline_write maximum grampa levels reached"));
19+                break;
20+            }
21         }
22     }
23