summaryrefslogtreecommitdiff
path: root/libpqpp/pq-prepared.cpp
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2017-01-01 20:08:22 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2017-01-01 20:08:22 +0000
commit409aeefb61795aa8f524d4371800a5bebb66a2e4 (patch)
tree7540ed88071dd5c7ebbae697171e3afc571a2a02 /libpqpp/pq-prepared.cpp
parentAPI change to pass command options through (diff)
downloadlibdbpp-postgresql-409aeefb61795aa8f524d4371800a5bebb66a2e4.tar.bz2
libdbpp-postgresql-409aeefb61795aa8f524d4371800a5bebb66a2e4.tar.xz
libdbpp-postgresql-409aeefb61795aa8f524d4371800a5bebb66a2e4.zip
Use command options statement hash when it's available
Diffstat (limited to 'libpqpp/pq-prepared.cpp')
-rw-r--r--libpqpp/pq-prepared.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/libpqpp/pq-prepared.cpp b/libpqpp/pq-prepared.cpp
index 4cd4540..bdf2a7d 100644
--- a/libpqpp/pq-prepared.cpp
+++ b/libpqpp/pq-prepared.cpp
@@ -1,9 +1,10 @@
#include "pq-prepared.h"
#include "pq-connection.h"
-PQ::PreparedStatement::PreparedStatement(Connection * c, const std::string & sql, unsigned int no) :
+PQ::PreparedStatement::PreparedStatement(Connection * c, const std::string & sql, unsigned int no, const DB::CommandOptions * opts) :
DB::Command(sql),
Command(c, sql, no),
+ hash(opts && opts->hash ? *opts->hash : std::hash<std::string>()(sql)),
pstmt(nullptr)
{
}
@@ -14,7 +15,6 @@ PQ::PreparedStatement::prepare() const
if (pstmt) {
return pstmt;
}
- auto hash(std::hash<std::string>()(sql));
auto i = c->preparedStatements.find(hash);
if (i != c->preparedStatements.end()) {
return (pstmt = i->second.c_str());