diff --git a/src/platforms/posix/handler.cpp b/src/platforms/posix/handler.cpp index f2861584..35f0a21b 100644 --- a/src/platforms/posix/handler.cpp +++ b/src/platforms/posix/handler.cpp @@ -40,16 +40,24 @@ namespace posix { posixHandler::posixHandler() - : m_socketFactory(new posixSocketFactory()), - m_fileSysFactory(new posixFileSystemFactory()) { +#if VMIME_HAVE_MESSAGING_FEATURES + m_socketFactory = new posixSocketFactory(); +#endif +#if VMIME_HAVE_FILESYSTEM_FEATURES + m_fileSysFactory = new posixFileSystemFactory(); +#endif } posixHandler::~posixHandler() { +#if VMIME_HAVE_MESSAGING_FEATURES delete (m_socketFactory); +#endif +#if VMIME_HAVE_FILESYSTEM_FEATURES delete (m_fileSysFactory); +#endif } diff --git a/src/platforms/posix/handler.hpp b/src/platforms/posix/handler.hpp index 145595b2..252d45d3 100644 --- a/src/platforms/posix/handler.hpp +++ b/src/platforms/posix/handler.hpp @@ -69,8 +69,13 @@ public: private: +#if VMIME_HAVE_MESSAGING_FEATURES posixSocketFactory* m_socketFactory; +#endif + +#if VMIME_HAVE_FILESYSTEM_FEATURES posixFileSystemFactory* m_fileSysFactory; +#endif };