diff options
Diffstat (limited to 'odb/oracle/object-result.txx')
-rw-r--r-- | odb/oracle/object-result.txx | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/odb/oracle/object-result.txx b/odb/oracle/object-result.txx index 19ac6fe..ddc9783 100644 --- a/odb/oracle/object-result.txx +++ b/odb/oracle/object-result.txx @@ -30,6 +30,9 @@ namespace odb } delete image_copy_; + + if (!this->end_) + statement_->free_result (); } template <typename T> @@ -124,7 +127,10 @@ namespace odb } if (statement_->fetch () == select_statement::no_data) + { + statement_->free_result (); this->end_ = true; + } else { cc.callback = &change_callback; @@ -186,6 +192,9 @@ namespace odb } delete image_copy_; + + if (!this->end_) + statement_->free_result (); } template <typename T> @@ -249,7 +258,10 @@ namespace odb } if (statement_->fetch () == select_statement::no_data) + { + statement_->free_result (); this->end_ = true; + } else { cc.callback = &change_callback; |