aboutsummaryrefslogtreecommitdiff
path: root/odb/mysql/connection-factory.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/mysql/connection-factory.cxx')
-rw-r--r--odb/mysql/connection-factory.cxx10
1 files changed, 5 insertions, 5 deletions
diff --git a/odb/mysql/connection-factory.cxx b/odb/mysql/connection-factory.cxx
index 2d86b82..bef21ce 100644
--- a/odb/mysql/connection-factory.cxx
+++ b/odb/mysql/connection-factory.cxx
@@ -226,7 +226,7 @@ namespace odb
}
}
- void connection_pool_factory::
+ bool connection_pool_factory::
release (pooled_connection* c)
{
c->clear ();
@@ -249,6 +249,8 @@ namespace odb
if (waiters_ != 0)
cond_.signal ();
+
+ return !keep;
}
//
@@ -264,13 +266,11 @@ namespace odb
shared_base::callback_ = &callback_;
}
- void connection_pool_factory::pooled_connection::
+ bool connection_pool_factory::pooled_connection::
zero_counter (void* arg)
{
pooled_connection* c (static_cast<pooled_connection*> (arg));
-
- if (c->pool_)
- c->pool_->release (c);
+ return c->pool_ ? c->pool_->release (c) : true;
}
}
}