Skip to content

Commit 8a58cd9

Browse files
committed
DispInvoke Variant bug exists in more recent versions of Delphi.
1 parent eba2a9f commit 8a58cd9

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

PythonForDelphi/Components/Sources/Core/VarPyth.pas

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ TPythonVariantType = class(TInvokeableVariantType, IVarInstanceReference)
145145
function VarDataToPythonObject( AVarData : TVarData ) : PPyObject;
146146
procedure PythonObjectToVarData( var Dest : TVarData; AObject : PPyObject; APythonAtomCompatible : Boolean );
147147
procedure PyhonVarDataCreate( var Dest : TVarData; AObject : PPyObject );
148-
{$IFNDEF USESYSTEMDISPINVOKE}
148+
{$IFNDEF USESYSTEMDISPINVOKE}
149149
procedure DoDispInvoke(Dest: PVarData; const Source: TVarData;
150150
CallDesc: PCallDesc; Params: Pointer); virtual;
151151
function GetPropertyWithArg(var Dest: TVarData; const V: TVarData;
@@ -934,7 +934,7 @@ procedure SetClearVarToEmptyParam(var V: TVarData);
934934
{$IFDEF USESYSTEMDISPINVOKE}
935935
procedure TPythonVariantType.DispInvoke(Dest: PVarData;
936936
const Source: TVarData; CallDesc: PCallDesc; Params: Pointer);
937-
{$IFDEF DELPHIXE2}
937+
{$IFDEF DELPHIXE2_OR_HIGHER}
938938
// Modified to correct memory leak QC102387
939939
procedure PatchedDispInvoke(Dest: PVarData;
940940
const Source: TVarData; CallDesc: PCallDesc; Params: Pointer);
@@ -1029,7 +1029,7 @@ TStringDesc = record
10291029
for I := Low(VarParams) to High(VarParams) do
10301030
VarDataClear(VarParams[I]);
10311031
end;
1032-
{$ENDIF DELPHIXE2}
1032+
{$ENDIF DELPHIXE2_OR_HIGHER}
10331033

10341034
procedure GetNamedParams;
10351035
var
@@ -1056,17 +1056,17 @@ TStringDesc = record
10561056
if (CallDesc^.CallType = CPropertyGet) and (CallDesc^.ArgCount = 1) then begin
10571057
NewCallDesc := CallDesc^;
10581058
NewCallDesc.CallType := CDoMethod;
1059-
{$IFDEF DELPHIXE2}
1059+
{$IFDEF DELPHIXE2_OR_HIGHER}
10601060
PatchedDispInvoke(Dest, Source, @NewCallDesc, Params);
1061-
{$ELSE DELPHIXE2}
1061+
{$ELSE DELPHIXE2_OR_HIGHER}
10621062
inherited DispInvoke(Dest, Source, @NewCallDesc, Params);
1063-
{$ENDIF DELPHIXE2}
1063+
{$ENDIF DELPHIXE2_OR_HIGHER}
10641064
end else
1065-
{$IFDEF DELPHIXE2}
1065+
{$IFDEF DELPHIXE2_OR_HIGHER}
10661066
PatchedDispInvoke(Dest, Source, CallDesc, Params);
1067-
{$ELSE DELPHIXE2}
1067+
{$ELSE DELPHIXE2_OR_HIGHER}
10681068
inherited;
1069-
{$ENDIF DELPHIXE2}
1069+
{$ENDIF DELPHIXE2_OR_HIGHER}
10701070
finally
10711071
if CallDesc^.NamedArgCount > 0 then SetLength(fNamedParams, 0);
10721072
end;

0 commit comments

Comments
 (0)