Cleanup memory management. Use new char[] inside our overloaded new operator that clears out memory.
Cleanup memory management. Use new char[] inside our overloaded new operator that clears out memory.
--- a/js/src/nanojit/avmplus.h
+++ b/js/src/nanojit/avmplus.h
@@ -116,17 +116,19 @@ public:
{
return &heap;
}
};
inline void*
operator new(size_t size, GC* gc)
{
- return GC::Alloc(size);
+ void* p = new char[size];
+ memset(p, 0, size);
+ return p;
}
#define DWB(x) x
#define DRCWB(x) x
#define MMGC_MEM_TYPE(x)
typedef int FunctionID;