[pypy-svn] r69566 - pypy/branch/stringbuilder/pypy/translator/c/src

fijal at codespeak.net fijal at codespeak.net
Mon Nov 23 21:46:04 CET 2009


Author: fijal
Date: Mon Nov 23 21:46:02 2009
New Revision: 69566

Modified:
   pypy/branch/stringbuilder/pypy/translator/c/src/mem.h
Log:
Make sure realloc_grow cleans up memory. A bit hard to test :-/


Modified: pypy/branch/stringbuilder/pypy/translator/c/src/mem.h
==============================================================================
--- pypy/branch/stringbuilder/pypy/translator/c/src/mem.h	(original)
+++ pypy/branch/stringbuilder/pypy/translator/c/src/mem.h	Mon Nov 23 21:46:02 2009
@@ -103,8 +103,23 @@
 
 #define OP_RAW_REALLOC_SHRINK(p, old_size, size, r) r = PyObject_Realloc((void*)p, size)
 
+#if RAW_MALLOC_ZERO_FILLED
+
+#define OP_RAW_REALLOC_GROW(p, old_size, size, r) { \
+  r = PyObject_Realloc((void*)p, size);             \
+  if (r != NULL) {                                  \
+    memset((void*)r + old_size, 0, size - old_size);  \
+  }                                                   \
+}
+
+#else
+
 #define OP_RAW_REALLOC_GROW(p, old_size, size, r) r = PyObject_Realloc((void*)p, size)
 
+#endif
+
+
+
 #ifdef MS_WINDOWS
 #define alloca  _alloca
 #endif



More information about the Pypy-commit mailing list