diff --git a/c/mapping/mlr_dsl_cst.c b/c/mapping/mlr_dsl_cst.c index d479f08a0..2a3540d88 100644 --- a/c/mapping/mlr_dsl_cst.c +++ b/c/mapping/mlr_dsl_cst.c @@ -2199,6 +2199,7 @@ static void handle_emit_all_to_stdfp( // xxx handle better, maybe in a class. the opts aren't complete at alloc time so we need to handle them here. if (pnode->psingle_lrec_writer == NULL) { cli_opts_t* popts = MLR_GLOBALS.popts; + // xxx bag up as popts per se 1st. pnode->psingle_lrec_writer = lrec_writer_alloc(popts->ofile_fmt, popts->ors, popts->ofs, popts->ops, popts->headerless_csv_output, popts->oquoting, popts->left_align_pprint, popts->right_justify_xtab_value, popts->json_flatten_separator, popts->quote_json_values_always, @@ -2220,6 +2221,7 @@ static void handle_emit_all_to_stdfp( } sllmv_free(pmvnames); + // xxx make method while (poutrecs->phead != NULL) { lrec_t* poutrec = sllv_pop(poutrecs); pnode->psingle_lrec_writer->pprocess_func(pnode->stdfp, poutrec, pnode->psingle_lrec_writer->pvstate); diff --git a/c/todo.txt b/c/todo.txt index dd5c26229..5e74f291a 100644 --- a/c/todo.txt +++ b/c/todo.txt @@ -1,11 +1,7 @@ ================================================================ BUGFIXES -* - mlr --from myfile.dat put '@v[NR][NR]=$* ; emit > stderr, @*, "index1", "index2"' - mlr: internal coding error detected in file mapping/rval_expr_evaluators.c at line 66. - -* need to ignore subproc abend ?!? +* need to ignore subproc abend (e.g. grep nonesuch) ?!? mlr --from myfile.dat put '@v[NR][NR]=$*; emit | "grep somepattern", @*, "index1", "index2"' ...