svn: r1161
This commit is contained in:
Matthew Flatt 2005-10-25 21:38:51 +00:00
parent 5805633713
commit dd4cf2990c
3 changed files with 12 additions and 11 deletions

View File

@ -63,7 +63,7 @@ static int mark_weak_array(void *p)
for (i = a->count; i--; ) {
if (data[i]
&& (*(short *)(data[i]) != 45)
&& (*(short *)(data[i]) != 54))
&& (*(short *)(data[i]) != 55))
CRASH(1);
}
}

View File

@ -276,6 +276,14 @@ Scheme_Env *scheme_basic_env()
}
}
#ifdef MZ_PRECISE_GC
scheme_register_traversers();
register_traversers();
scheme_init_hash_key_procs();
#endif
scheme_init_true_false();
REGISTER_SO(toplevels_ht);
REGISTER_SO(locals_ht[0]);
REGISTER_SO(locals_ht[1]);
@ -289,14 +297,6 @@ Scheme_Env *scheme_basic_env()
locals_ht[1] = ht;
}
scheme_init_true_false();
#ifdef MZ_PRECISE_GC
scheme_register_traversers();
register_traversers();
scheme_init_hash_key_procs();
#endif
#ifdef TIME_STARTUP_PROCESS
printf("pre-process @ %ld\n", scheme_get_process_milliseconds());
#endif

View File

@ -1379,8 +1379,7 @@ long scheme_get_byte_string_unless(const char *who,
unsigned char *s;
i = ip->ungotten_count;
s = (unsigned char *)ip->ungotten;
/* s is in reverse order */
/* s will be in reverse order */
if (peek) {
if (!SCHEME_INTP(peek_skip) || (i < SCHEME_INT_VAL(peek_skip))) {
@ -1398,9 +1397,11 @@ long scheme_get_byte_string_unless(const char *who,
l = size;
size -= l;
s = (unsigned char *)ip->ungotten; /* Not GC-safe! */
while (l--) {
buffer[offset + got++] = s[--i];
}
s = NULL;
if (!peek)
ip->ungotten_count = i;