- From: Erik Selberg <speed@cs.washington.edu>
- Date: Tue, 23 Jan 1996 16:43:00 PST
- To: Henrik Frystyk Nielsen <frystyk@w3.org>
- Cc: www-lib@w3.org
Henrik Frystyk Nielsen writes:
>> I've been digging around in the source, and so far I've been unable to
>> come up with anything resembling what I need --- which is some
>> callback / flag / thingy which, upon successfully loading a URL, quits
>> the HTEvent_Loop. As near as I can see, the various __DoUserCallback
>> calls will always return HT_OK unless a serious error, such as a
>> memory outage or something, occur.
> It would be reasonable to have a "event shutdown" function in the Event
> manager that simply exits the event loop and returns control to the
> application. Something like
> extern HTEvent_shutdown (void);
> How this exactly is going to be implemented depends on the event loop.
Here's one better, which I think may work. Currently, HTEvent_Loop
looks something like:
do {
} while (1);
Can this be changed to:
typedef int HTEventLoopTerminateFunc();
PRIVATE HTEventLoopTerminateFunc *tf;
...
do {
} while (!tf || *tf());
There would be some HTEventLoop_setTerminationFunc() call which would
set the term func. This would just be a function which wouldn't take
any arguments, or perhaps a request, and would specify whether or not
to terminate. Yes, it'll probably rely on a global variable somewhere,
but I think that's OK for the use (and thread-minded people can always
throw in a mutex).
-Erik
Received on Tuesday, 23 January 1996 19:43:15 UTC