Properly dispose of classes implementing IDisposable

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Unknown
    • 2.26.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • Dotnet Drivers
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?
    • None
    • None
    • None
    • None
    • None
    • None

      From our Coverity analysis, all the high impact issues reported in the src directory of the driver were from not properly disposing of classes implementing IDisposable. We need to properly dispose those classes in the following use cases in the driver.

      MongoDB.Driver.Core.Authentication.Oidc.AzureOidcCallback::GetOidcAccessToken()

      MongoDB.Driver.Encryption.LibMongoCryptControllerBase::ProcessReadyState()
      MongoDB.Driver.Encryption.LibMongoCryptControllerBase::ProcessNeedMongoKeysStateAsync()

      MongoDB.Driver.Encryption.AutoEncryptionLibMongoCryptController::ProcessNeedMongoMarkingsState()
      MongoDB.Driver.Encryption.AutoEncryptionLibMongoCryptController::ProcessNeedMongoMarkingsStateAsync()

      MongoDB.Driver.Encryption.AutoEncryptionLibMongoCryptController::ProcessNeedCollectionInfoState()
      MongoDB.Driver.Encryption.AutoEncryptionLibMongoCryptController::ProcessNeedCollectionInfoStateAsync()

            Assignee:
            Adelin Mbida Owona
            Reporter:
            Coverity Collector User
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: