diff options
Diffstat (limited to 'odb/simple-object-result.txx')
-rw-r--r-- | odb/simple-object-result.txx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/odb/simple-object-result.txx b/odb/simple-object-result.txx index 60705e8..f14caac 100644 --- a/odb/simple-object-result.txx +++ b/odb/simple-object-result.txx @@ -30,6 +30,7 @@ namespace odb object_type& obj (pointer_traits::get_ref (p)); current (p); load (obj, false); + object_traits::pointer_cache_traits::initialize (ig.position ()); ig.release (); } } @@ -47,10 +48,12 @@ namespace odb typedef odb::object_traits<object_type> object_traits; - typename object_traits::reference_cache_traits::insert_guard ig ( + typename object_traits::reference_cache_traits::position_type p ( object_traits::reference_cache_traits::insert ( res_->db_, res_->load_id (), obj)); + typename object_traits::reference_cache_traits::insert_guard ig (p); res_->load (obj, false); + object_traits::reference_cache_traits::initialize (p); ig.release (); } } |