* GetModuleByAddr: Prevent returning a name of the current executable for invalid addresses such as pointer(-1) on Windows.

git-svn-id: trunk@43364 -
This commit is contained in:
yury 2019-11-02 14:54:25 +00:00
parent 6f80223b64
commit 4ade471488

View File

@ -98,12 +98,15 @@ uses
begin begin
baseaddr:=Tmm.AllocationBase; baseaddr:=Tmm.AllocationBase;
TST[0]:= #0; TST[0]:= #0;
GetModuleFileName(THandle(Tmm.AllocationBase), TST, Length(TST)); if baseaddr <> nil then
begin
GetModuleFileName(THandle(Tmm.AllocationBase), TST, Length(TST));
{$ifdef FPC_OS_UNICODE} {$ifdef FPC_OS_UNICODE}
filename:= String(PWideChar(@TST)); filename:= String(PWideChar(@TST));
{$else} {$else}
filename:= String(PChar(@TST)); filename:= String(PChar(@TST));
{$endif FPC_OS_UNICODE} {$endif FPC_OS_UNICODE}
end;
end; end;
end; end;