diff options
| -rw-r--r-- | libpqpp/pq-selectcommand.cpp | 9 | ||||
| -rw-r--r-- | libpqpp/unittests/testpq.cpp | 9 | 
2 files changed, 12 insertions, 6 deletions
diff --git a/libpqpp/pq-selectcommand.cpp b/libpqpp/pq-selectcommand.cpp index 6c02fc4..55dc02c 100644 --- a/libpqpp/pq-selectcommand.cpp +++ b/libpqpp/pq-selectcommand.cpp @@ -21,15 +21,12 @@ PQ::SelectCommand::SelectCommand(Connection * conn, const std::string & sql, uns  PQ::SelectCommand::~SelectCommand()  { +	if (executed) { +		c->checkResultFree((PQexec(c->conn, s_close.c_str())), PGRES_COMMAND_OK); +	}  	if (txOpened) {  		c->commitTx();  	} -	if (executed) { -		PQclear(PQexec(c->conn, s_close.c_str())); -		if (execRes) { -			PQclear(execRes); -		} -	}  }  std::string diff --git a/libpqpp/unittests/testpq.cpp b/libpqpp/unittests/testpq.cpp index c49fa34..96e5611 100644 --- a/libpqpp/unittests/testpq.cpp +++ b/libpqpp/unittests/testpq.cpp @@ -160,6 +160,15 @@ BOOST_AUTO_TEST_CASE( bulkload )  	delete ro;  } +BOOST_AUTO_TEST_CASE( nofetch ) +{ +	auto ro = DB::MockDatabase::openConnectionTo("pqmock"); +	auto count = ro->newSelectCommand("SELECT * FROM bulktest"); +	count->execute(); +	delete count; +	delete ro; +} +  BOOST_AUTO_TEST_CASE( bigIterate )  {  	auto ro = DB::MockDatabase::openConnectionTo("pqmock");  | 
