editor: clear input buffer when getting screen size
- not clearing the keyboard buffer could lead to wrong results when reading the screen size from terminal
This commit is contained in:
parent
df46223d88
commit
1ca6c13c4b
1 changed files with 6 additions and 1 deletions
|
|
@ -135,7 +135,11 @@ begin
|
|||
end;
|
||||
|
||||
procedure getScreenSize;
|
||||
var c:char;
|
||||
begin
|
||||
(* empty keyboard buffer *)
|
||||
while conavail do read(con, c);
|
||||
|
||||
GetTermSize(screenW, screenH);
|
||||
pageSize := screenH - vMargins;
|
||||
(* set scrolling region - DECSTBM *)
|
||||
|
|
@ -2463,6 +2467,8 @@ begin
|
|||
close(infile);
|
||||
end;
|
||||
|
||||
open(con, '%RAW', ModeOverwrite);
|
||||
|
||||
initScreen;
|
||||
showScreen;
|
||||
|
||||
|
|
@ -2471,7 +2477,6 @@ begin
|
|||
else
|
||||
statusMsg('Successfully read file. Press F1 for help', false, false);
|
||||
|
||||
open(con, '%RAW', ModeOverwrite);
|
||||
|
||||
if errorLine > 0 then
|
||||
begin
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue