Opened 16 years ago

#356 new defect

.NET: IFeatureReader throws errors when passed by value

Reported by: MaksimS Owned by: gregboone
Priority: major Milestone:
Component: FDO API Version: 3.3.1
Severity: 3 Keywords:
Cc: External ID:

Description

.NET 2.0: When passed by value, instantiated OSGeo.FDO.Commands.Feature.IFeatureReader causes "memory read error" exceptions thrown on random basis. It's possibly something up to generated managed SWIG interfaces and ways the unmanaged objects / related memory gets handled.

Example:

There's MyFeature class that takes instantiated IFeatureReader in it's constructor to populate it's members and instantiate MyFeature object:

Public Class MyFeature

Sub New(ByVal reader As OSGeo.FDO.Commands.Feature.IFeatureReader)
...
...
End Sub

...

While being utilized like:

...
Dim reader As IFeatureReader = selectCmd.Execute

Do While reader.ReadNext
   Dim myFeatureInstance As New MyFeature(reader)
   ...
Loop

reader.Close()
reader.Dispose()
...

Excatly the same exceptions (again, on random basis) get thrown if instantiated IFeatureReader was passed by reference. Can someone please point out "dos and dont's" of managed FDO API interfaces?

Change History (0)

Note: See TracTickets for help on using tickets.