|
@@ -79,7 +79,10 @@ end;
|
|
|
|
|
|
procedure KeyBufAdd(Ch: Char);
|
|
procedure KeyBufAdd(Ch: Char);
|
|
begin
|
|
begin
|
|
- {todo: overflow checking}
|
|
|
|
|
|
+ { do nothing, if the buffer is full }
|
|
|
|
+ if ((KeyBufTail + 1) = KeyBufHead) or
|
|
|
|
+ ((KeyBufTail = High(KeyBuffer)) and (KeyBufHead = Low(KeyBuffer))) then
|
|
|
|
+ exit;
|
|
KeyBuffer[KeyBufTail] := Ch;
|
|
KeyBuffer[KeyBufTail] := Ch;
|
|
Inc(KeyBufTail);
|
|
Inc(KeyBufTail);
|
|
if KeyBufTail > High(KeyBuffer) then
|
|
if KeyBufTail > High(KeyBuffer) then
|