--- ./src/c/main.d.orig 2012-07-24 10:51:53.000000000 -0600 +++ ./src/c/main.d 2012-07-27 15:43:14.666816529 -0600 @@ -76,7 +76,11 @@ cl_fixnum ecl_option_values[ECL_OPT_LIMI 1, /* ECL_OPT_TRAP_SIGPIPE */ 1, /* ECL_OPT_TRAP_SIGCHLD */ 1, /* ECL_OPT_TRAP_INTERRUPT_SIGNAL */ +#ifdef GBC_BOEHM_GENGC + 0, /* ECL_OPT_SIGNAL_HANDLING_THREAD */ +#else 1, /* ECL_OPT_SIGNAL_HANDLING_THREAD */ +#endif 16, /* ECL_OPT_SIGNAL_QUEUE_SIZE */ 0, /* ECL_OPT_BOOTED */ 8192, /* ECL_OPT_BIND_STACK_SIZE */ @@ -504,11 +508,11 @@ cl_boot(int argc, char **argv) return 1; } - /*ecl_set_option(ECL_OPT_SIGNAL_HANDLING_THREAD, 0);*/ - #if !defined(GBC_BOEHM) setbuf(stdin, stdin_buf); setbuf(stdout, stdout_buf); +#else + ecl_set_option(ECL_OPT_SIGNAL_HANDLING_THREAD, 0); #endif ARGC = argc;