From 3bbf1aebb2c0d461b03f6cd8e3b2f964f3d00aeb Mon Sep 17 00:00:00 2001 From: Baptiste Lepilleur Date: Fri, 18 Jun 2004 06:39:45 +0000 Subject: Include/cppunit/extension/TestSuiteBuilderContext. include/cppunit/extension/TestSuiteBuilderContext.h: * src/cppunit/TestSuiteBuilderContext.cpp: fixed bug #921843. This bug was caused by a known STL bug in VC++ 6. See http://www.dinkumware.com/vc_fixes.html issue with shared std::map in dll. As a work-around the map has been replaced by a vector. --- include/cppunit/extensions/TestSuiteBuilderContext.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'include/cppunit') diff --git a/include/cppunit/extensions/TestSuiteBuilderContext.h b/include/cppunit/extensions/TestSuiteBuilderContext.h index 171455b..db26926 100644 --- a/include/cppunit/extensions/TestSuiteBuilderContext.h +++ b/include/cppunit/extensions/TestSuiteBuilderContext.h @@ -10,6 +10,7 @@ #pragma warning( disable: 4251 ) // X needs to have dll-interface to be used by clients of class Z #endif + CPPUNIT_NS_BEGIN class TestSuite; @@ -37,6 +38,8 @@ public: const TestNamer &namer, TestFixtureFactory &factory ); + virtual ~TestSuiteBuilderContextBase(); + /*! \brief Adds a test to the fixture suite. * * \param test Test to add to the fixture suite. Must not be \c NULL. @@ -74,11 +77,17 @@ public: protected: TestFixture *makeTestFixture() const; - typedef CppUnitMap Properties; + // Notes: we use a vector here instead of a map to work-around the + // shared std::map in dll bug in VC6. + // See http://www.dinkumware.com/vc_fixes.html for detail. + typedef std::pair Property; + typedef CppUnitVector Properties; TestSuite &m_suite; const TestNamer &m_namer; TestFixtureFactory &m_factory; + +private: Properties m_properties; }; -- cgit v1.2.1