Skip to content

When the dispose pattern is used do not raise CC0033 #603

Closed
@giggio

Description

@giggio

If using the a field is being disposed through the use of the Dispose pattern, CC0033 is incorrectly raised.

This should not raise CC0033:

public class DisposableClass : IDisposable
{
    public void Dispose()
    {
        throw new NotImplementedException();
    }
}
public class A : IDisposable
{
    private DisposableClass disposableField = new DisposableClass();
    public void Dispose()
    {
        Dispose(true);
        GC.SuppressFinalize(this);
    }
    private void Dispose(bool disposing)
    {
        if (disposing)
            if (disposableField != null)
                disposableField.Dispose();
    }
}

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions