diff options
| author | Ron Yorston <rmy@pobox.com> | 2019-04-03 08:56:30 +0100 |
|---|---|---|
| committer | Denys Vlasenko <vda.linux@googlemail.com> | 2019-04-03 16:20:13 +0200 |
| commit | 3e61b59ef326cdb800736f502e0240b109271076 (patch) | |
| tree | aeb26998dfb89712345341e79149d61310b5debf | |
| parent | 2f28b2bdbbe229b760e7c2a271d73a19f929ca76 (diff) | |
| download | busybox-w32-3e61b59ef326cdb800736f502e0240b109271076.tar.gz busybox-w32-3e61b59ef326cdb800736f502e0240b109271076.tar.bz2 busybox-w32-3e61b59ef326cdb800736f502e0240b109271076.zip | |
vi: avoid build failure in non-default case
If vi is built with FEATURE_VI_USE_SIGNALS disabled and
FEATURE_VI_WIN_RESIZE enabled new_screen() is used without a
declaration. Move the function to avoid this.
Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| -rw-r--r-- | editors/vi.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/editors/vi.c b/editors/vi.c index b41cf451c..ce261feca 100644 --- a/editors/vi.c +++ b/editors/vi.c | |||
| @@ -722,6 +722,22 @@ static void screen_erase(void) | |||
| 722 | memset(screen, ' ', screensize); // clear new screen | 722 | memset(screen, ' ', screensize); // clear new screen |
| 723 | } | 723 | } |
| 724 | 724 | ||
| 725 | static char *new_screen(int ro, int co) | ||
| 726 | { | ||
| 727 | int li; | ||
| 728 | |||
| 729 | free(screen); | ||
| 730 | screensize = ro * co + 8; | ||
| 731 | screen = xmalloc(screensize); | ||
| 732 | // initialize the new screen. assume this will be a empty file. | ||
| 733 | screen_erase(); | ||
| 734 | // non-existent text[] lines start with a tilde (~). | ||
| 735 | for (li = 1; li < ro - 1; li++) { | ||
| 736 | screen[(li * co) + 0] = '~'; | ||
| 737 | } | ||
| 738 | return screen; | ||
| 739 | } | ||
| 740 | |||
| 725 | //----- Synchronize the cursor to Dot -------------------------- | 741 | //----- Synchronize the cursor to Dot -------------------------- |
| 726 | static NOINLINE void sync_cursor(char *d, int *row, int *col) | 742 | static NOINLINE void sync_cursor(char *d, int *row, int *col) |
| 727 | { | 743 | { |
| @@ -2882,22 +2898,6 @@ static void colon(char *buf) | |||
| 2882 | // TAB NEWLINE VT FF RETURN SPACE | 2898 | // TAB NEWLINE VT FF RETURN SPACE |
| 2883 | // DO NOT COUNT NEWLINE AS WHITESPACE | 2899 | // DO NOT COUNT NEWLINE AS WHITESPACE |
| 2884 | 2900 | ||
| 2885 | static char *new_screen(int ro, int co) | ||
| 2886 | { | ||
| 2887 | int li; | ||
| 2888 | |||
| 2889 | free(screen); | ||
| 2890 | screensize = ro * co + 8; | ||
| 2891 | screen = xmalloc(screensize); | ||
| 2892 | // initialize the new screen. assume this will be a empty file. | ||
| 2893 | screen_erase(); | ||
| 2894 | // non-existent text[] lines start with a tilde (~). | ||
| 2895 | for (li = 1; li < ro - 1; li++) { | ||
| 2896 | screen[(li * co) + 0] = '~'; | ||
| 2897 | } | ||
| 2898 | return screen; | ||
| 2899 | } | ||
| 2900 | |||
| 2901 | static int st_test(char *p, int type, int dir, char *tested) | 2901 | static int st_test(char *p, int type, int dir, char *tested) |
| 2902 | { | 2902 | { |
| 2903 | char c, c0, ci; | 2903 | char c, c0, ci; |
