We are already using GTest on several VC++ 2005 projects and have a single pre-built version of gtest.lib used between projects - so I know GTest is working.
But when I'm trying to add it to a project (actually replacing boost-test), I get a Buffer Overrun error immediately. The console window opens but before main() starts, I get this error. My call stack looks something like this:
msvcp80d.dll!std::basic_stringstream<char,std::char_traits<char>,std::allocator<char> >::`vbase destructor'() + 0x12 bytes C++
MyApp.exe!testing::internal::StringStreamToString() + 0x168 bytes
MyApp.exe!string "\nThis test program did NOT call "...() + 0x58 bytes
msvcp80d.dll!std::_Traits_helper::copy_s<std::char_traits<char> >(char * _First1=0x00000000, unsigned int _Size=0, const char * _First2=0x0012fe20, unsigned int _Count=1244708, std::_Secure_char_traits_tag __formal={...}) Line 707 + 0x15 bytes C++
00642908()
msvcp80d.dll!std::_Mutex::_Unlock() Line 29 + 0xb bytes C++
MyApp.exe!testing::Message::GetString() + 0x17 bytes
MyApp.exe!testing::internal::GetCapturedStderr() + 0xa3 bytes
MyApp.exe!testing::internal::BoolFromGTestEnv() + 0x13 bytes
MyApp.exe!_FreeLibrary@4() + 0x5c7e bytes
I don't really know where to start, I figure some static init code is being run as a result of #include <gtest/gtest.h> but how do I find what's wrong and go about fixing it?