* CrtCtrlBreakHandler may not be invoked for Ctrl-C on certain platforms (Win32/Win64) - made conditional (preparation for future use as platform independent include file)

git-svn-id: trunk@35053 -
This commit is contained in:
Tomas Hajny 2016-12-03 23:41:03 +00:00
parent 63c3fc59d4
commit 7956cb5d48

View File

@ -402,11 +402,17 @@ begin
if CtrlBreak then
CrtCtrlBreakHandler := not (CheckBreak)
else (* Ctrl-C pressed *)
{$IFDEF FPC_CRT_CTRLC_TREATED_AS_KEY}
(* If Ctrl-C is really treated as a key, the following branch should never *)
(* be executed, but let's stay on the safe side and ensure predictability. *)
CrtCtrlBreakHandler := false;
{$ELSE FPC_CRT_CTRLC_TREATED_AS_KEY}
begin
if not (SpecialKey) and (ScanCode = 0) then
ScanCode := 3;
CrtCtrlBreakHandler := true;
end;
{$ENDIF FPC_CRT_CTRLC_TREATED_AS_KEY}
end;