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.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/odb/mysql/connection-factory.cxx b/odb/mysql/connection-factory.cxx
index b9b3d19..2f1b00c 100644
--- a/odb/mysql/connection-factory.cxx
+++ b/odb/mysql/connection-factory.cxx
@@ -178,8 +178,12 @@ namespace odb
if (connections_.size () != 0)
{
shared_ptr<pooled_connection> c (connections_.back ());
- c->pool_ = this;
connections_.pop_back ();
+
+ if (ping_ && !c->ping ())
+ continue;
+
+ c->pool_ = this;
in_use_++;
return c;
}