Skip to content

Commit 2e6faa3

Browse files
committed
Fix #464
1 parent 46e0bf7 commit 2e6faa3

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

Source/WrapDelphi.pas

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1511,11 +1511,14 @@ function TExposedGetSet.GetterWrapper(AObj: PPyObject; AContext : Pointer): PPyO
15111511
begin
15121512
Result := nil;
15131513
if ValidateClassProperty(AObj, FParentRtti.Handle, Obj, LOutMsg) then
1514-
begin
1514+
try
15151515
if FRttiMember is TRttiProperty then
15161516
Result := GetRttiProperty(Obj, TRttiProperty(FRttiMember), FPyDelphiWrapper, LOutMsg)
15171517
else if FRttiMember is TRttiField then
15181518
Result := GetRttiField(Obj, TRttiField(FRttiMember), FPyDelphiWrapper, LOutMsg);
1519+
except
1520+
on E: Exception do
1521+
LOutMsg := E.Message;
15191522
end;
15201523

15211524
if not Assigned(Result) then
@@ -1531,13 +1534,16 @@ function TExposedGetSet.SetterWrapper(AObj, AValue: PPyObject; AContext: Pointer
15311534
begin
15321535
Result := -1;
15331536
if ValidateClassProperty(AObj, FParentRtti.Handle, Obj, ErrMsg) then
1534-
begin
1537+
try
15351538
if ((FRttiMember is TRttiProperty) and SetRttiProperty(Obj,
15361539
TRttiProperty(FRttiMember), AValue, FPyDelphiWrapper, ErrMsg)) or
15371540
((FRttiMember is TRttiField) and SetRttiField(Obj,
15381541
TRttiField(FRttiMember), AValue, FPyDelphiWrapper, ErrMsg))
15391542
then
15401543
Result := 0
1544+
except
1545+
on E: Exception do
1546+
ErrMsg := E.Message;
15411547
end;
15421548

15431549
if Result <> 0 then

0 commit comments

Comments
 (0)