void factor_vm::io_error()
{
-#ifndef WINCE
if(errno == EINTR)
return;
-#endif
general_error(ERROR_IO,tag_fixnum(errno),false_object);
}
int c;
for(;;)
{
- c = fgetc(stream);
+ c = getc(stream);
if(c == EOF)
{
if(feof(stream))
{
for(;;)
{
- if(fputc(c,stream) == EOF)
+ if(putc(c,stream) == EOF)
io_error();
else
break;
VM we can get. This will not be a good idea when we actually support native
threads. */
assert(thread_vms.size() == 1);
- THREADHANDLE vm_thread = thread_vms.begin()->first;
factor_vm *vm = thread_vms.begin()->second;
-
- assert(SuspendThread(vm_thread) == 0);
- std::cout << "handling ctrl-c" << std::endl;
-
vm->enqueue_safepoint_fep();
- MemoryBarrier();
- assert(ResumeThread(vm_thread) == 1);
return TRUE;
}
default: