On December 13, 2002 03:13 am, Shachar Shemesh wrote: > I am not at all familiar with the wineserver (maybe it's time, eh?). I
Welcome to the club <g> > got the impression it will be difficult to perform this task both > without race conditions, and in a way that will put the entire power of > Win32 at our disposal. Well, the resonal I suggest we put it in there is to avoid races. The wineserver is analogous to the kernel in Unix, so it's startup is the closes thing to a boot. > If you (or anyone else who has better familiarity with the server) can > recommend a specific source file and line number where such a change can > be performed, we can start testing right away. I was thinking we add it at the very end of the initialization: Index: server/main.c =================================================================== RCS file: /var/cvs/wine/server/main.c,v retrieving revision 1.28 diff -u -r1.28 main.c --- server/main.c 2 Oct 2002 23:49:30 -0000 1.28 +++ server/main.c 13 Dec 2002 14:48:25 -0000 @@ -126,6 +126,7 @@ if (debug_level) fprintf( stderr, "wineserver: starting (pid=%ld)\n", (long) getpid() ); init_registry(); + if (wine_needs_reboot()) fork(wineboot); /* asynchronously */ select_loop(); #ifdef DEBUG_OBJECTS But as I said, I have no idea if this is feasible, it just _seems_ to me that it's the closes thing to a reboot, that's all. In fact, chances are it's not the right thing to do, but what a heck! :) Maybe Alexandre can comment on it? -- Dimi.