diff options
Diffstat (limited to 'readline')
-rw-r--r-- | readline/display.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/readline/display.c b/readline/display.c index 3f6fe71..3215a94 100644 --- a/readline/display.c +++ b/readline/display.c @@ -1126,8 +1126,10 @@ _rl_move_vert (to) { int row, col; + i = fflush (rl_outstream); /* make sure the cursor pos is current! */ ScreenGetCursor (&row, &col); ScreenSetCursor ((row + to - _rl_last_v_pos), col); + delta = i; } #else /* !__GO32__ */ @@ -1377,7 +1379,10 @@ space_to_eol (count) void _rl_clear_screen () { -#if !defined (__GO32__) +#if defined (__GO32__) + ScreenClear (); /* FIXME: only works in text modes */ + ScreenSetCursor (0, 0); /* term_clrpag is "cl" which homes the cursor */ +#else if (term_clrpag) tputs (term_clrpag, 1, _rl_output_character_function); else @@ -1392,6 +1397,7 @@ insert_some_chars (string, count) int count; { #if defined (__GO32__) +#ifndef __DJGPP__ int row, col, width; char *row_start; @@ -1400,7 +1406,7 @@ insert_some_chars (string, count) row_start = ScreenPrimary + (row * width); memcpy (row_start + col + count, row_start + col, width - col - count); - +#endif /* !__DJGPP__ */ /* Place the text on the screen. */ _rl_output_some_chars (string, count); #else /* !_GO32 */ @@ -1445,6 +1451,7 @@ static void delete_chars (count) int count; { +#if !defined (__DJGPP__) #if defined (__GO32__) int row, col, width; char *row_start; @@ -1473,6 +1480,7 @@ delete_chars (count) tputs (term_dc, 1, _rl_output_character_function); } #endif /* !__GO32__ */ +#endif /* !__DJGPP__ */ } void |