3m fixes
svn: r1161
This commit is contained in:
parent
5805633713
commit
dd4cf2990c
|
@ -63,7 +63,7 @@ static int mark_weak_array(void *p)
|
||||||
for (i = a->count; i--; ) {
|
for (i = a->count; i--; ) {
|
||||||
if (data[i]
|
if (data[i]
|
||||||
&& (*(short *)(data[i]) != 45)
|
&& (*(short *)(data[i]) != 45)
|
||||||
&& (*(short *)(data[i]) != 54))
|
&& (*(short *)(data[i]) != 55))
|
||||||
CRASH(1);
|
CRASH(1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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(toplevels_ht);
|
||||||
REGISTER_SO(locals_ht[0]);
|
REGISTER_SO(locals_ht[0]);
|
||||||
REGISTER_SO(locals_ht[1]);
|
REGISTER_SO(locals_ht[1]);
|
||||||
|
@ -289,14 +297,6 @@ Scheme_Env *scheme_basic_env()
|
||||||
locals_ht[1] = ht;
|
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
|
#ifdef TIME_STARTUP_PROCESS
|
||||||
printf("pre-process @ %ld\n", scheme_get_process_milliseconds());
|
printf("pre-process @ %ld\n", scheme_get_process_milliseconds());
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1379,8 +1379,7 @@ long scheme_get_byte_string_unless(const char *who,
|
||||||
unsigned char *s;
|
unsigned char *s;
|
||||||
|
|
||||||
i = ip->ungotten_count;
|
i = ip->ungotten_count;
|
||||||
s = (unsigned char *)ip->ungotten;
|
/* s will be in reverse order */
|
||||||
/* s is in reverse order */
|
|
||||||
|
|
||||||
if (peek) {
|
if (peek) {
|
||||||
if (!SCHEME_INTP(peek_skip) || (i < SCHEME_INT_VAL(peek_skip))) {
|
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;
|
l = size;
|
||||||
|
|
||||||
size -= l;
|
size -= l;
|
||||||
|
s = (unsigned char *)ip->ungotten; /* Not GC-safe! */
|
||||||
while (l--) {
|
while (l--) {
|
||||||
buffer[offset + got++] = s[--i];
|
buffer[offset + got++] = s[--i];
|
||||||
}
|
}
|
||||||
|
s = NULL;
|
||||||
|
|
||||||
if (!peek)
|
if (!peek)
|
||||||
ip->ungotten_count = i;
|
ip->ungotten_count = i;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user