MOO-cows Mailing List Archive


Can't suspend()ed task return a value in 1.8.0alpha1?

In examing tasks.c, I found this:
                 case TASK_SUSPENDED:
                    current_task_id = t->t.suspended.the_vm->task_id;
 this line ->       resume_from_previous_vm(t->t.suspended.the_vm,
                    did_one = 1;

In server 1.7.9p2, it was like this:
	                  case TASK_SUSPENDED:
                    current_task_id = t->;
 this line ->       resume_suspended_task(t->t.suspended.the_vm, 0);
                    did_one = 1;

It seems that a suspend()ed task can't return a value, and it couldn't in
older versions. But, in older versions, it is *possible* without hacking 
other files. I made a server hack which depends on values from suspend()ed task
and read()ing task, for using read() in :do_login_command(). But it seems
I'm in a hard way... (not technical, but just I dislike to hack the well-
formed server interface.....)

Ahn, Jin-su    (
School of Electrical Engineering
Seoul National University, Korea

Home | Subject Index | Thread Index