diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2014-09-11 10:04:34 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2014-09-11 10:04:34 +0200 |
| commit | e324e6975367c235ed5413f76fdc3d5189cd00a2 (patch) | |
| tree | 3d421c8189ebcc66263c6c7c21f4af022091bde3 /editor.c | |
| parent | aa3948409ade9064d90f3e60af5201da83b097d7 (diff) | |
| download | vis-e324e6975367c235ed5413f76fdc3d5189cd00a2.tar.gz vis-e324e6975367c235ed5413f76fdc3d5189cd00a2.tar.xz | |
Add :qall command
Diffstat (limited to 'editor.c')
| -rw-r--r-- | editor.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -316,9 +316,10 @@ static void editor_window_detach(Editor *ed, EditorWin *win) { win->next = win->prev = NULL; } -void editor_window_close(Editor *ed) { - EditorWin *win = ed->win; - ed->win = win->next ? win->next : win->prev; +void editor_window_close(EditorWin *win) { + Editor *ed = win->editor; + if (ed->win == win) + ed->win = win->next ? win->next : win->prev; editor_window_detach(ed, win); editor_window_free(ed, win); editor_draw(ed); @@ -343,7 +344,7 @@ err: void editor_free(Editor *ed) { while (ed->windows) - editor_window_close(ed); + editor_window_close(ed->windows); editor_prompt_free(ed->prompt); text_regex_free(ed->search_pattern); for (int i = 0; i < REG_LAST; i++) |
