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