diff options
Diffstat (limited to 'src/pdarun.c')
-rw-r--r-- | src/pdarun.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/pdarun.c b/src/pdarun.c index f1885ec6..c958273e 100644 --- a/src/pdarun.c +++ b/src/pdarun.c @@ -180,8 +180,10 @@ static void send_back_ignore( program_t *prg, tree_t **sp, int artificial = parse_tree->flags & PF_ARTIFICIAL; if ( head != 0 ) { - if ( artificial ) + if ( artificial ) { + colm_tree_upref( prg, parse_tree->shadow->tree ); send_back_tree( prg, is, parse_tree->shadow->tree ); + } else send_back_text( prg, is, colm_alph_from_cstr( string_data( head ) ), head->length ); } @@ -240,7 +242,6 @@ static void send_back( program_t *prg, tree_t **sp, struct pda_run *pda_run, } colm_tree_upref( prg, parse_tree->shadow->tree ); - send_back_tree( prg, is, parse_tree->shadow->tree ); } else { |