Commit 347e333b authored by Jelte Jansen's avatar Jelte Jansen Committed by JINMEI Tatuya
Browse files

[2275] valgrind fix: store singleton instance in auto_ptr

parent fac39dc2
......@@ -106,10 +106,10 @@ internal::RequestCheckCreator::create(const string& name,
RequestLoader&
getRequestLoader() {
static RequestLoader* loader(NULL);
if (loader == NULL) {
static auto_ptr<RequestLoader> loader(NULL);
if (loader.get() == NULL) {
// Creator registration may throw, so we first store the new loader
// in an auto pointer in order to provide the strong exception
// in a second auto pointer in order to provide the strong exception
// guarantee.
auto_ptr<RequestLoader> loader_ptr =
auto_ptr<RequestLoader>(new RequestLoader(REJECT));
......@@ -129,7 +129,7 @@ getRequestLoader() {
new LogicCreator<AllOfSpec, RequestContext>("ALL")));
// From this point there shouldn't be any exception thrown
loader = loader_ptr.release();
loader.reset(loader_ptr.release());
}
return (*loader);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment