summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Reams <jbreams@mongodb.com>2017-04-29 10:37:30 -0400
committerJonathan Reams <jbreams@mongodb.com>2017-05-24 15:40:29 -0400
commit24353098bf91d2914ade05b305f3edc0cbe30c7c (patch)
treeac72c2c4a83527345f064619262935a86f9cf221
parentcd4956859881653fc7280e22ee6fa88aa5f72829 (diff)
downloadmongo-24353098bf91d2914ade05b305f3edc0cbe30c7c.tar.gz
SERVER-28996 SERVER-28996 Fix memory leak in MongoURI if auth fails
(cherry picked from commit cb893ef71d66bea22dd79553bd0080549f794c16)
-rw-r--r--src/mongo/client/mongo_uri_connect.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/client/mongo_uri_connect.cpp b/src/mongo/client/mongo_uri_connect.cpp
index ff9c048b610..cdb4766fb69 100644
--- a/src/mongo/client/mongo_uri_connect.cpp
+++ b/src/mongo/client/mongo_uri_connect.cpp
@@ -162,15 +162,15 @@ BSONObj MongoURI::_makeAuthObjFromOptions(int maxWireVersion) const {
}
DBClientBase* MongoURI::connect(std::string& errmsg, double socketTimeout) const {
- auto ret = _connectString.connect(errmsg, socketTimeout);
+ auto ret = std::unique_ptr<DBClientBase>(_connectString.connect(errmsg, socketTimeout));
if (!ret) {
- return ret;
+ return nullptr;
}
if (!_user.empty()) {
ret->auth(_makeAuthObjFromOptions(ret->getMaxWireVersion()));
}
- return ret;
+ return ret.release();
}
} // namespace mongo