1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- From 8f3bf4f0d3605b50a8e4c48c89aeabc455f04884 Mon Sep 17 00:00:00 2001
- From: Yousong Zhou <yszhou4tech@gmail.com>
- Date: Fri, 24 Mar 2017 21:13:10 +0100
- Subject: [PATCH 2/2] vi: avoid touching a new file with ZZ when no editing has
- been done
- This is the behaviour observed with standard vim and busybox vi of at
- least 1.22.1. It was changed with commit "32afd3a vi: some
- simplifications" which happened before 1.23.0.
- Mistyping filename on command line happens fairly often and it's better
- we restore the old behaviour to avoid a few unnecessary flash writes and
- sometimes efforts of debugging bugs caused by those unneeded stray
- files.
- Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
- Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
- ---
- editors/vi.c | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
- --- a/editors/vi.c
- +++ b/editors/vi.c
- @@ -719,14 +719,6 @@ static int init_text_buffer(char *fn)
- {
- int rc;
-
- - flush_undo_data();
- - modified_count = 0;
- - last_modified_count = -1;
- -#if ENABLE_FEATURE_VI_YANKMARK
- - /* init the marks */
- - memset(mark, 0, sizeof(mark));
- -#endif
- -
- /* allocate/reallocate text buffer */
- free(text);
- text_size = 10240;
- @@ -741,6 +733,14 @@ static int init_text_buffer(char *fn)
- // file doesnt exist. Start empty buf with dummy line
- char_insert(text, '\n', NO_UNDO);
- }
- +
- + flush_undo_data();
- + modified_count = 0;
- + last_modified_count = -1;
- +#if ENABLE_FEATURE_VI_YANKMARK
- + /* init the marks */
- + memset(mark, 0, sizeof(mark));
- +#endif
- return rc;
- }
-
|