stdcxx-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From far...@apache.org
Subject svn commit: r587873 - /incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp
Date Wed, 24 Oct 2007 12:22:17 GMT
Author: faridz
Date: Wed Oct 24 05:22:17 2007
New Revision: 587873

URL: http://svn.apache.org/viewvc?rev=587873&view=rev
Log:
2007-10-24 Travis Vitek <vitek@roguewave.com>

	STDCXX-587
	* 20.temp.buffer.mt.cpp (test_return_buffer): Set buffer pointer
	to 0 after deallocating.
	(thr_func): Provide default values for buffers. Deallocate buffers
	that remain allocated after thread loop.

Modified:
    incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp

Modified: incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp
URL: http://svn.apache.org/viewvc/incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp?rev=587873&r1=587872&r2=587873&view=diff
==============================================================================
--- incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp (original)
+++ incubator/stdcxx/branches/4.2.x/tests/utilities/20.temp.buffer.mt.cpp Wed Oct 24 05:22:17
2007
@@ -117,6 +117,7 @@
     assert (len == buf.second * sizeof (T));
 
     std::return_temporary_buffer<T>(buf.first);
+    buf.first = 0;
 }
 
 /**************************************************************************/
@@ -137,10 +138,10 @@
 
 #endif   // _RWSTD_INT64_T
 
-    std::pair<_RWSTD_INT8_T*,  std::ptrdiff_t> buf0;
-    std::pair<_RWSTD_INT16_T*, std::ptrdiff_t> buf1;
-    std::pair<_RWSTD_INT32_T*, std::ptrdiff_t> buf2;
-    std::pair<Type64*,         std::ptrdiff_t> buf3;
+    std::pair<_RWSTD_INT8_T*,  std::ptrdiff_t> buf0 (0, 0);
+    std::pair<_RWSTD_INT16_T*, std::ptrdiff_t> buf1 (0, 0);
+    std::pair<_RWSTD_INT32_T*, std::ptrdiff_t> buf2 (0, 0);
+    std::pair<Type64*,         std::ptrdiff_t> buf3 (0, 0);
 
     for (unsigned i = 0; i != rw_opt_nloops; ++i) {
 
@@ -181,6 +182,12 @@
             break;
         }
     }
+
+    // free any buffers that remain allocated
+    if (buf0.first) test_return_buffer (targs, buf0);
+    if (buf1.first) test_return_buffer (targs, buf1);
+    if (buf2.first) test_return_buffer (targs, buf2);
+    if (buf3.first) test_return_buffer (targs, buf3);
 
     return 0;
 }



Mime
View raw message