Skip to content

Faulty declarations in rtl\wininc\func.inc

Original Reporter info from Mantis: FPCCore
  • Reporter name: FPC core team

Description:

Faulty declarations in rtl\wininc\func.inc:

- SetConsoleWindowInfo

BOOL SetConsoleWindowInfo(
  HANDLE hConsoleOutput,
  BOOL bAbsolute,
  const SMALL_RECT* lpConsoleWindow
);

is declared as

function SetConsoleWindowInfo(hConsoleOutput:HANDLE; bAbsolute:WINBOOL; var lpConsoleWindow:SMALL_RECT):WINBOOL; external 'kernel32' name 'SetConsoleWindowInfo';

the last parameter should be const, not var

- CreateConsoleScreenBuffer:

HANDLE CreateConsoleScreenBuffer(
  DWORD dwDesiredAccess,
  DWORD dwShareMode,
  const SECURITY_ATTRIBUTES* lpSecurityAttributes,
  DWORD dwFlags,
  LPVOID lpScreenBufferData
);

Third parameter (lpSecurityAttributes) can be nil and thus should be a pointer (LPSECURITY_ATTRIBUTES), not a var.

Additional information:

Reporter: Robert Rossmair [Team JEDI]
EMail: rrossmair at users dot sourceforge dot net

Mantis conversion info:

  • Mantis ID: 5836
  • OS: Win32
  • Version: 1.9.8
  • Fixed in version: 1.9.9
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information