diff options
author | Vincent Richard <[email protected]> | 2007-03-12 08:36:10 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2007-03-12 08:36:10 +0000 |
commit | 9bada472d75e8777e87304ac36afb097a113bf88 (patch) | |
tree | 00b0fe63dcc9d9a11c7d838b67e80caa77a57ca4 | |
parent | Fixed warning. (diff) | |
download | vmime-9bada472d75e8777e87304ac36afb097a113bf88.tar.gz vmime-9bada472d75e8777e87304ac36afb097a113bf88.zip |
Fixed stack overflow error with VC++.
-rw-r--r-- | vmime/utility/smartPtr.hpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/vmime/utility/smartPtr.hpp b/vmime/utility/smartPtr.hpp index 9fb8315b..c52752ed 100644 --- a/vmime/utility/smartPtr.hpp +++ b/vmime/utility/smartPtr.hpp @@ -277,7 +277,14 @@ public: if (m_ptr) m_ptr->getRefManager()->addStrong(); +#if defined(_MSC_VER) // VC++ compiler bug (stack overflow) + ref <const T> r; + r.m_ptr = m_ptr; + return r; +#else return ref <const T>::fromPtrImpl(m_ptr); +#endif // defined(_MSC_VER) + } // Copy |