소스 검색

* always pass property value by value to the property setter of a method, the optimization (to prevent copying) to pass just the reference doesn't work on arm, for example (bug 8273)

git-svn-id: trunk@6370 -
Vincent Snijders 18 년 전
부모
커밋
d87dc4e3f8
1개의 변경된 파일4개의 추가작업 그리고 4개의 파일을 삭제
  1. 4 4
      rtl/objpas/typinfo.pp

+ 4 - 4
rtl/objpas/typinfo.pp

@@ -1453,8 +1453,8 @@ end;
 
 Procedure SetMethodProp(Instance : TObject;PropInfo : PPropInfo; const Value : TMethod);
 type
-  TSetMethodProcIndex=procedure(index:longint;p:PMethod) of object;
-  TSetMethodProc=procedure(p:PMethod) of object;
+  TSetMethodProcIndex=procedure(index:longint;p:TMethod) of object;
+  TSetMethodProc=procedure(p:TMethod) of object;
 var
   AMethod : TMethod;
 begin
@@ -1470,9 +1470,9 @@ begin
           AMethod.Code:=PPointer(Pointer(Instance.ClassType)+Ptrint(PropInfo^.SetProc))^;
         AMethod.Data:=Instance;
         if ((PropInfo^.PropProcs shr 6) and 1)<>0 then
-          TSetMethodProcIndex(AMethod)(PropInfo^.Index,@Value)
+          TSetMethodProcIndex(AMethod)(PropInfo^.Index,Value)
         else
-          TSetMethodProc(AMethod)(@Value);
+          TSetMethodProc(AMethod)(Value);
       end;
   end;
 end;