[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stratagus-CVS] stratagus/src/siod slib.c
From: |
Jimmy Salmon |
Subject: |
[Stratagus-CVS] stratagus/src/siod slib.c |
Date: |
Mon, 29 Sep 2003 17:38:18 -0400 |
CVSROOT: /cvsroot/stratagus
Module name: stratagus
Branch:
Changes by: Jimmy Salmon <address@hidden> 03/09/29 17:38:17
Modified files:
src/siod : slib.c
Log message:
Only gc the stack if called from repl_driver
Patches:
Index: stratagus/src/siod/slib.c
diff -u stratagus/src/siod/slib.c:1.29 stratagus/src/siod/slib.c:1.30
--- stratagus/src/siod/slib.c:1.29 Sun Sep 28 21:06:11 2003
+++ stratagus/src/siod/slib.c Mon Sep 29 17:38:17 2003
@@ -94,7 +94,7 @@
static void init_slib_version(void)
{setvar(cintern("*slib-version*"),
- cintern("$Id: slib.c,v 1.29 2003/09/29 01:06:11 jsalmon3 Exp $"),
+ cintern("$Id: slib.c,v 1.30 2003/09/29 21:38:17 jsalmon3 Exp $"),
NIL);}
char * __stdcall siod_version(void)
@@ -1340,12 +1340,14 @@
mark_locations((LISP *) save_regs_gc_mark,
(LISP *) (((char *) save_regs_gc_mark) +
sizeof(save_regs_gc_mark)));
mark_protected_registers();
- mark_locations((LISP *) stack_start_ptr,
- (LISP *) &stack_end);
+ if(errjmp_avail) {
+ mark_locations((LISP *) stack_start_ptr,
+ (LISP *) &stack_end);
#ifdef THINK_C
- mark_locations((LISP *) ((char *) stack_start_ptr + 2),
- (LISP *) ((char *) &stack_end + 2));
+ mark_locations((LISP *) ((char *) stack_start_ptr + 2),
+ (LISP *) ((char *) &stack_end + 2));
#endif
+ }
gc_sweep();
gc_ms_stats_end();}