From 9792fc9d137b4dd702360ac0242f9a7a26e675c2 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 21 Sep 2015 18:07:02 +0200 Subject: Add tracer_guard to restore database tracer --- bpkg/database | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'bpkg/database') diff --git a/bpkg/database b/bpkg/database index c4ace56..05ffb04 100644 --- a/bpkg/database +++ b/bpkg/database @@ -17,6 +17,17 @@ namespace bpkg database open (const dir_path& configuration, tracer&, bool create = false); + + struct tracer_guard + { + tracer_guard (database& db, tracer& t) + : db_ (db), t_ (db.tracer ()) {db.tracer (t);} + ~tracer_guard () {db_.tracer (*t_);} + + private: + database& db_; + odb::tracer* t_; + }; } #endif // BPKG_DATABASE -- cgit v1.1