ref: f13090387d3a76daf8b531cb2e8bfa7e26b6f344
parent: 348a8d66a5282e2738bdc44f7c12ac8900d8e31e
author: Ori Bernstein <[email protected]>
date: Wed Oct 1 17:00:36 EDT 2014
Clear memory on deallocation. Helps detect use-after-free.
--- a/libstd/alloc.myr
+++ b/libstd/alloc.myr
@@ -235,7 +235,12 @@
/* frees a blob that is 'sz' bytes long. */
const bytefree = {p, sz
var bkt
+ var b, i
+ b = p[:sz]
+ for i = 0; i < sz; i++
+ b[i] = 0xa8
+ ;;
if (sz < Bktmax)
bkt = &buckets[bktnum(sz)]
bktfree(bkt, p)