aboutsummaryrefslogtreecommitdiff
path: root/editor.c
diff options
context:
space:
mode:
Diffstat (limited to 'editor.c')
-rw-r--r--editor.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/editor.c b/editor.c
index c94e9be..e06e946 100644
--- a/editor.c
+++ b/editor.c
@@ -42,10 +42,13 @@ void editor_windows_arrange(Editor *ed, enum UiLayout layout) {
}
bool editor_window_reload(Win *win) {
- /* can't reload unsaved file */
- if (!win->file->name)
- return false;
- File *file = file_new(win->editor, win->file->name);
+ const char *name = win->file->name;
+ if (!name)
+ return false; /* can't reload unsaved file */
+ /* temporarily unset file name, otherwise file_new returns the same File */
+ win->file->name = NULL;
+ File *file = file_new(win->editor, name);
+ win->file->name = name;
if (!file)
return false;
file_free(win->editor, win->file);