diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-21 21:32:27 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-21 21:32:27 +0100 |
commit | cb066d59f5394beb88ac5b92c8a6db51494c9799 (patch) | |
tree | 9993d0a9750271d3b33b9e0ab48f22810f3f8b8f | |
parent | Suppress false warning (diff) | |
download | libdbpp-postgresql-cb066d59f5394beb88ac5b92c8a6db51494c9799.tar.bz2 libdbpp-postgresql-cb066d59f5394beb88ac5b92c8a6db51494c9799.tar.xz libdbpp-postgresql-cb066d59f5394beb88ac5b92c8a6db51494c9799.zip |
Don't use &vector.front() for vector which might be emptylibdbpp-postgresql-1.4.9
Instead just use .data() which safely returns something which might be nullptr, but that's fine.
-rw-r--r-- | libpqpp/pq-bulkselectcommand.cpp | 4 | ||||
-rw-r--r-- | libpqpp/pq-cursorselectcommand.cpp | 2 | ||||
-rw-r--r-- | libpqpp/pq-modifycommand.cpp | 4 |
3 files changed, 5 insertions, 5 deletions
diff --git a/libpqpp/pq-bulkselectcommand.cpp b/libpqpp/pq-bulkselectcommand.cpp index 8c9e1f0..298261e 100644 --- a/libpqpp/pq-bulkselectcommand.cpp +++ b/libpqpp/pq-bulkselectcommand.cpp @@ -18,8 +18,8 @@ void PQ::BulkSelectCommand::execute() { if (!executed) { - execRes = c->checkResult(PQexecPrepared(c->conn, prepare(), static_cast<int>(values.size()), &values.front(), - &lengths.front(), &formats.front(), binary), + execRes = c->checkResult(PQexecPrepared(c->conn, prepare(), static_cast<int>(values.size()), values.data(), + lengths.data(), formats.data(), binary), PGRES_TUPLES_OK); nTuples = static_cast<decltype(nTuples)>(PQntuples(execRes)); tuple = static_cast<decltype(tuple)>(-1); diff --git a/libpqpp/pq-cursorselectcommand.cpp b/libpqpp/pq-cursorselectcommand.cpp index 96d3dc3..8d3a7bf 100644 --- a/libpqpp/pq-cursorselectcommand.cpp +++ b/libpqpp/pq-cursorselectcommand.cpp @@ -46,7 +46,7 @@ PQ::CursorSelectCommand::execute() s_declare = mkdeclare(); } c->checkResultFree(PQexecParams(c->conn, s_declare.c_str(), static_cast<int>(values.size()), nullptr, - &values.front(), &lengths.front(), &formats.front(), binary), + values.data(), lengths.data(), formats.data(), binary), PGRES_COMMAND_OK); fetchTuples(); createColumns(execRes); diff --git a/libpqpp/pq-modifycommand.cpp b/libpqpp/pq-modifycommand.cpp index 38c10f6..b29fda7 100644 --- a/libpqpp/pq-modifycommand.cpp +++ b/libpqpp/pq-modifycommand.cpp @@ -15,8 +15,8 @@ PQ::ModifyCommand::ModifyCommand(Connection * conn, const std::string & sql, con unsigned int PQ::ModifyCommand::execute(bool anc) { - PGresult * res = PQexecPrepared(c->conn, prepare(), static_cast<int>(values.size()), &values.front(), - &lengths.front(), &formats.front(), 0); + PGresult * res = PQexecPrepared( + c->conn, prepare(), static_cast<int>(values.size()), values.data(), lengths.data(), formats.data(), 0); c->checkResult(res, PGRES_COMMAND_OK, PGRES_TUPLES_OK); auto rows = atoi(PQcmdTuples(res)); PQclear(res); |