aboutsummaryrefslogtreecommitdiff
path: root/vis.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2016-04-18 16:31:26 +0200
committerMarc André Tanner <mat@brain-dump.org>2016-04-18 16:31:26 +0200
commit61a0008ad75189f542df3818d3d0c43830b94990 (patch)
tree2c97860a71c358b98f79287300343ce3147c0382 /vis.c
parentef5c9d41e86a2c8af909308355518635a6007d56 (diff)
downloadvis-61a0008ad75189f542df3818d3d0c43830b94990.tar.gz
vis-61a0008ad75189f542df3818d3d0c43830b94990.tar.xz
vis: use internal file to show lua errors
This means no event handlers are run for it, hence there is no chance for recursive errors.
Diffstat (limited to 'vis.c')
-rw-r--r--vis.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/vis.c b/vis.c
index 1be6864..593c540 100644
--- a/vis.c
+++ b/vis.c
@@ -361,6 +361,8 @@ Vis *vis_new(Ui *ui, VisEvent *event) {
goto err;
if (!(vis->search_file = file_new_internal(vis, NULL)))
goto err;
+ if (!(vis->error_file = file_new_internal(vis, NULL)))
+ goto err;
if (!(vis->keymap = map_new()))
goto err;
vis->mode_prev = vis->mode = &vis_modes[VIS_MODE_NORMAL];
@@ -384,6 +386,7 @@ void vis_free(Vis *vis) {
vis_window_close(vis->windows);
file_free(vis, vis->command_file);
file_free(vis, vis->search_file);
+ file_free(vis, vis->error_file);
for (int i = 0; i < LENGTH(vis->registers); i++)
register_release(&vis->registers[i]);
vis->ui->free(vis->ui);