Hi.

We need to copy FieldDefs if programmer assigns to this property.
For example RxMemoryDataset expect this behaviour.

Petr

-- 
Ing. Petr Kristan
.
EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice
tel: +420 466335223    Czech Republic (Eastern Europe) 
fax: +420 466510709
Index: packages/fcl-db/src/base/dataset.inc
===================================================================
--- packages/fcl-db/src/base/dataset.inc	(revision 10597)
+++ packages/fcl-db/src/base/dataset.inc	(working copy)
@@ -824,6 +822,12 @@
     end;
 end;
 
+Procedure TDataSet.SetFieldDefs(AFieldDefs: TFieldDefs);
+
+begin
+  FFieldDefs.Assign(AFieldDefs);
+end;
+
 procedure TDataSet.InitFieldDefsFromfields;
 var i : integer;
 begin
Index: packages/fcl-db/src/base/db.pas
===================================================================
--- packages/fcl-db/src/base/db.pas	(revision 10565)
+++ packages/fcl-db/src/base/db.pas	(working copy)
@@ -1130,6 +1130,7 @@
     Function GetActive : boolean;
     Procedure UnRegisterDataSource(ADatasource : TDatasource);
     Procedure UpdateFieldDefs;
+    Procedure SetFieldDefs(AFieldDefs: TFieldDefs);
   protected
     procedure RecalcBufListSize;
     procedure ActivateBuffers; virtual;
@@ -1312,7 +1313,7 @@
     property DefaultFields: Boolean read FDefaultFields;
     property EOF: Boolean read FEOF;
     property FieldCount: Longint read GetFieldCount;
-    property FieldDefs: TFieldDefs read FFieldDefs write FFieldDefs;
+    property FieldDefs: TFieldDefs read FFieldDefs write SetFieldDefs;
 //    property Fields[Index: Longint]: TField read GetField write SetField;
     property Found: Boolean read FFound;
     property Modified: Boolean read FModified write SetModified;
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to