summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Reams <jbreams@mongodb.com>2017-04-29 10:37:30 -0400
committerAndrew Morrow <acm@mongodb.com>2017-05-17 16:25:30 -0400
commitae06aa4ec7137bb1e2688838d29dd778338a6393 (patch)
tree51c519b811924bccaf52caa48530c25236d6acd4
parent4dbab2657ec28f71da0e97c2d2f9be8df4e54e70 (diff)
downloadmongo-ae06aa4ec7137bb1e2688838d29dd778338a6393.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.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mongo/client/mongo_uri_connect.cpp b/src/mongo/client/mongo_uri_connect.cpp
index ee68a2c1614..172d0ce046f 100644
--- a/src/mongo/client/mongo_uri_connect.cpp
+++ b/src/mongo/client/mongo_uri_connect.cpp
@@ -177,16 +177,16 @@ DBClientBase* MongoURI::connect(StringData applicationName,
}
}
- auto ret =
- _connectString.connect(applicationName, errmsg, socketTimeoutSecs.value_or(0.0), this);
+ auto ret = std::unique_ptr<DBClientBase>(
+ _connectString.connect(applicationName, errmsg, socketTimeoutSecs.value_or(0.0), this));
if (!ret) {
- return ret;
+ return nullptr;
}
if (!_user.empty()) {
ret->auth(_makeAuthObjFromOptions(ret->getMaxWireVersion()));
}
- return ret;
+ return ret.release();
}
} // namespace mongo