diff options
-rw-r--r-- | linenoise/linenoise.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/linenoise/linenoise.c b/linenoise/linenoise.c index 524324e4..50422e50 100644 --- a/linenoise/linenoise.c +++ b/linenoise/linenoise.c @@ -1666,6 +1666,9 @@ static void edit_in_editor(lino_t *l) { FILE *fi; int nread; + fclose(fo); + fo = 0; + if (system(cmd) == 0 && (fi = fopen(path, "r")) != 0) { nread = fread(l->data, 1, sizeof l->data - 1, fi); fclose(fi); @@ -1682,7 +1685,9 @@ static void edit_in_editor(lino_t *l) { } } - fclose(fo); + if (fo != 0) + fclose(fo); + remove(path); clear_sel(l); } |