THRIFT-2850 CMake: Windows improvements, doc, TMemoryBufferTest fix
diff --git a/lib/cpp/test/CMakeLists.txt b/lib/cpp/test/CMakeLists.txt
index 5027ffe..8587fa8 100644
--- a/lib/cpp/test/CMakeLists.txt
+++ b/lib/cpp/test/CMakeLists.txt
@@ -74,7 +74,7 @@
     TServerTransportTest.cpp
 )
 
-if(NOT WITH_BOOSTTHREADS AND NOT WITH_STDTHREADS)
+if(NOT WITH_BOOSTTHREADS AND NOT WITH_STDTHREADS AND NOT MSVC)
     list(APPEND UnitTest_SOURCES RWMutexStarveTest.cpp)
 endif()
 
diff --git a/lib/cpp/test/TMemoryBufferTest.cpp b/lib/cpp/test/TMemoryBufferTest.cpp
index 82b9ed6..ec0f392 100644
--- a/lib/cpp/test/TMemoryBufferTest.cpp
+++ b/lib/cpp/test/TMemoryBufferTest.cpp
@@ -38,27 +38,28 @@
 
 BOOST_AUTO_TEST_CASE(test_read_write_grow)
 {
-    // Added to test the fix for THRIFT-1248
-    TMemoryBuffer uut;
-    const int maxSiz = 65536;
-    std::vector<uint8_t> buf;
-    buf.resize(maxSiz);
-    for (uint32_t i = 0; i < maxSiz; ++i)
-    {
-        buf[i] = static_cast<uint8_t>(i);
-    }
+  // Added to test the fix for THRIFT-1248
+  TMemoryBuffer uut;
+  const int maxSize = 65536;
+  uint8_t verify[maxSize];
+  std::vector<uint8_t> buf;
+  buf.resize(maxSize);
 
-    for (uint32_t i = 1; i < maxSiz; i *= 2)
-    {
-        uut.write(&buf[0], i);
-    }
+  for (uint32_t i = 0; i < maxSize; ++i)
+  {
+    buf[i] = static_cast<uint8_t>(i);
+  }
 
-    for (uint32_t i = 1; i < maxSiz; i *= 2)
-    {
-        uint8_t verify[i];
-        uut.read(verify, i);
-        BOOST_CHECK_EQUAL(0, ::memcmp(verify, &buf[0], i));
-    }
+  for (uint32_t i = 1; i < maxSize; i *= 2)
+  {
+    uut.write(&buf[0], i);
+  }
+
+  for (uint32_t i = 1; i < maxSize; i *= 2)
+  {
+    uut.read(verify, i);
+    BOOST_CHECK_EQUAL(0, ::memcmp(verify, &buf[0], i));
+  }
 }
 
 BOOST_AUTO_TEST_CASE(test_roundtrip)