From 45eb084d27be46bcd70ee05e1d07566e20aa1bc1 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 9 Jul 2014 13:47:20 +0100 Subject: [PATCH] fix uses of uninitilized memory Thanks to memcheck. (I'm unable to get far with Racket and memcheck, but I get this far.) Merge to v6.1. --- racket/src/racket/gc2/block_cache.c | 2 +- racket/src/racket/src/validate.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/racket/src/racket/gc2/block_cache.c b/racket/src/racket/gc2/block_cache.c index 3fe21f4e1b..299fe4b14f 100644 --- a/racket/src/racket/gc2/block_cache.c +++ b/racket/src/racket/gc2/block_cache.c @@ -97,7 +97,7 @@ static block_desc *bc_alloc_std_block(block_group *bg) { bg->block_size <<= 1; } - bd = (block_desc*) ofm_malloc(sizeof(block_desc)); + bd = (block_desc*) ofm_malloc_zero(sizeof(block_desc)); if (!bd) { os_free_pages(r, this_block_size); return NULL; diff --git a/racket/src/racket/src/validate.c b/racket/src/racket/src/validate.c index ed3bf42350..1d1cd7cbf0 100644 --- a/racket/src/racket/src/validate.c +++ b/racket/src/racket/src/validate.c @@ -414,7 +414,7 @@ static int define_values_validate(Scheme_Object *data, Mz_CPort *port, result = validate_expr(port, val, stack, tls, depth, letlimit, delta, num_toplevels, num_stxes, num_lifts, tl_use_map, - tl_state, tl_timestamp + (stinfo.uses_super ? 1 : 0), + tl_state, tl_timestamp + ((is_struct && stinfo.uses_super) ? 1 : 0), NULL, !!only_var, 0, vc, 0, 0, NULL, size-1, _st_ht);