diff --git a/src/proc/mobject/session.hpp b/src/proc/mobject/session.hpp index 0542e1da2..744113ccd 100644 --- a/src/proc/mobject/session.hpp +++ b/src/proc/mobject/session.hpp @@ -80,7 +80,7 @@ namespace mobject { { protected: Session (session::DefsManager&) throw(); - virtual ~Session () = 0; + virtual ~Session (); public: static session::SessManager& current; @@ -128,13 +128,13 @@ namespace mobject { /** replace the current session by a new * session loaded from serialised state. */ - virtual void load () =0; + virtual void load () =0; /** create a complete, serialised representation * of the current session config and contents. * @todo how to serialise, parameters, return value? */ - virtual void save () =0; + virtual void save () =0; /** access to the current session object instance. * This is the sole access path available for clients. @@ -142,7 +142,7 @@ namespace mobject { */ virtual Session* operator-> () throw() =0; - virtual ~SessManager() {}; + virtual ~SessManager(); }; diff --git a/src/proc/mobject/session/session.cpp b/src/proc/mobject/session/session.cpp index dec115d15..317c8ef3b 100644 --- a/src/proc/mobject/session/session.cpp +++ b/src/proc/mobject/session/session.cpp @@ -92,12 +92,13 @@ namespace mobject { - Session::~Session () - { } - Session::Session (session::DefsManager& def) throw() : defaults(def) { } + + // Emit the vtables and other magic stuff here... + SessManager::~SessManager() { } + Session::~Session () { }