diff --git a/src/lib66/exec/ssexec_tree_admin.c b/src/lib66/exec/ssexec_tree_admin.c index 8456518907ded8c311acb32b6662b32a0a55eb4e..21e54e5855a59f3a8a9fd50bdd59f3ba14b7dd3c 100644 --- a/src/lib66/exec/ssexec_tree_admin.c +++ b/src/lib66/exec/ssexec_tree_admin.c @@ -513,6 +513,8 @@ void tree_groups(graph_t *graph, char const *base, char const *treename, char co void tree_master_modify_contents(char const *base) { + log_flow() ; + stralloc sa = STRALLOC_ZERO ; resolve_tree_master_t mres = RESOLVE_TREE_MASTER_ZERO ; resolve_wrapper_t_ref wres = resolve_set_struct(DATA_TREE_MASTER, &mres) ; @@ -582,10 +584,10 @@ void tree_create(graph_t *g, ssexec_t *info, tree_what_t *what) * seed.sa.s + seed.depends is empty, which can lead to a segmentation fault * when the -o option is passed at the command line. However, we have already gone * through the tree_parse_options_depends in such cases. */ - if (what->depends) + if (what->depends && seed.sa.len) tree_parse_options_depends(g, info, seed.sa.s + seed.depends, 0, what) ; - if (what->requiredby) + if (what->requiredby && seed.sa.len) tree_parse_options_depends(g, info, seed.sa.s + seed.requiredby, 1, what) ; tree_master_modify_contents(info->base.s) ;