- .NET API: fixed bug in DataSet destructor

pull/239/head
Michael Zillgith 5 years ago
parent 9b5c45a0b3
commit 83e8e14603

@ -65,7 +65,8 @@ namespace IEC61850
/// </returns>
public string GetReference()
{
if (reference == null) {
if (reference == null)
{
IntPtr nativeString = ClientDataSet_getReference(nativeObject);
reference = Marshal.PtrToStringAnsi(nativeString);
@ -85,7 +86,8 @@ namespace IEC61850
/// </returns>
public MmsValue GetValues()
{
if (values == null) {
if (values == null)
{
IntPtr nativeValues = ClientDataSet_getValues(nativeObject);
values = new MmsValue(nativeValues, false);
@ -108,8 +110,10 @@ namespace IEC61850
public void Dispose()
{
lock (this) {
if (nativeObject != IntPtr.Zero) {
lock (this)
{
if (nativeObject != IntPtr.Zero)
{
ClientDataSet_destroy(nativeObject);
nativeObject = IntPtr.Zero;
}
@ -118,7 +122,7 @@ namespace IEC61850
~DataSet()
{
ClientDataSet_destroy (nativeObject);
Dispose();
}
internal IntPtr getNativeInstance()

Loading…
Cancel
Save