Alexandre Julliard
463fd4ffb1
Moved remaining initialisations to the new process context.
...
Shuffled things around a bit in PROCESS_Start to avoid deadlocks.
Changed PROCESS_CallUserSignalProc to avoid accessing another process
address space.
1999-05-24 14:44:52 +00:00
Ulrich Weigand
a1957c4d64
Wait until child initialized before returning from PROCESS_Create.
1999-05-24 08:10:46 +00:00
Alexandre Julliard
d131a17ee0
Use the new debug functions to send debug events at appropriate places.
...
Pass the process creation flags to PROCESS_Create.
1999-05-23 20:02:04 +00:00
Alexandre Julliard
4cc1b339cf
Implemented the Win32 debug API functions.
1999-05-23 19:57:42 +00:00
Alexandre Julliard
156570906f
Converted to the new debug interface, using script written by Patrik
...
Stridvall.
1999-05-23 10:25:25 +00:00
Ulrich Weigand
158f00ed8d
Bugfix: dwFlags must describe target process in UserSignalProc.
1999-05-23 09:31:49 +00:00
Ulrich Weigand
8c2dc8b1b8
Adapted to event synchronization changes.
1999-05-22 18:58:36 +00:00
Ulrich Weigand
c5b8b3aeae
Improved syslevel handling, store currently held syslevels in thread
...
database, WIN_CritSection converted to syslevel.
1999-05-22 16:28:47 +00:00
Ulrich Weigand
c319c669fb
Added ExitKernel16 (replacing USER_ExitWindows), ExitProcess16, and
...
MapProcessHandle; stub for BUNNY_351.
1999-05-22 16:18:36 +00:00
Ove Kaaven
3d93102dd4
Expire timers on expiry time too, not just after.
1999-05-22 15:56:21 +00:00
Alexandre Julliard
e29a001a85
Added TEB in init_thread request.
1999-05-16 16:51:28 +00:00
Alexandre Julliard
43c190e7ba
Server reorganization:
...
- moved request handlers to the specific C files
- moved handle management to handle.c
- moved server private includes to server/ instead of include/server/
1999-05-15 10:48:19 +00:00
Patrik Stridvall
1bb9403938
ANSI C fixes.
1999-05-08 15:47:44 +00:00
Ulrich Weigand
36a1a25f0e
Call THREAD_FreeTHDB as service thread callback.
1999-05-08 10:48:03 +00:00
Ulrich Weigand
1c971e3364
Some initialization sequence bugfixes:
...
- Initialize process crst for 16-bit processes.
- Don't crash due to uninitialized stack frames in WineLib.
- Map system DLLs before calling UserSignalProc.
- Signal USIG_PROCESS_CREATE only *after* the env_db is filled.
1999-05-08 09:58:47 +00:00
Ulrich Weigand
70b2e383a0
Fixed various stupid bugs in services thread routines.
...
Added SERVICE_Exit routine to kill the services thread.
1999-05-04 16:43:38 +00:00
Alexandre Julliard
64ae5a57cf
Moved a few more initialisations to the new process context.
1999-05-02 19:10:57 +00:00
Alexandre Julliard
e8c6a08cd9
Converted to the new debugging interface (done with the help of the
...
script written by Patrik Stridvall).
Some changes to the initialisation sequence for 32-bit processes.
1999-05-02 14:33:41 +00:00
Alexandre Julliard
06c275a643
Converted to the new debugging interface (done with the help of the
...
script written by Patrik Stridvall).
1999-05-02 14:32:27 +00:00
Ulrich Weigand
586793ffd8
Initialize process critical section in the correct process context.
1999-04-25 11:04:45 +00:00
Ulrich Weigand
a988074d24
Warn if wrong process tries to enter critical section.
...
Better implementation of Reinitialize/UninitializeCriticalSection
(still not quite correct).
1999-04-25 11:03:59 +00:00
Patrik Stridvall
0f8bc5b5c7
Fixed ANSI compabillity.
1999-04-22 16:27:50 +00:00
Marcus Meissner
450f96aab4
CreateSocketHandle,GetHandleContext,SetHandleContext stubs added.
1999-04-22 14:55:06 +00:00
Patrik Stridvall
b4b9fae671
New debug scheme with explicit debug channels declaration.
1999-04-19 14:56:29 +00:00
Alexandre Julliard
79762059eb
Added timeout to critical section waiting.
1999-04-18 13:23:36 +00:00
Ulrich Weigand
a44f9f8e1b
Merged Linux/FreeBSD reentrant errno handler, added Solaris.
...
Preliminary support for Solaris low-level threads (LWPs) added.
1999-04-18 13:20:43 +00:00
Bertho Stultiens
c1d1cfe976
Reorganization of the loader to correctly load and free libraries and
...
implementation of load order to load different types of libraries.
1999-04-18 12:14:06 +00:00
Kevin Holbrook
a8f8bef098
Fix ambiguous else warning.
1999-04-18 09:33:20 +00:00
Bertho Stultiens
77f08f330e
UnitializeCriticalSection partial stub implementation.
1999-04-15 16:42:50 +00:00
Ulrich Weigand
371fd75a39
Added new CLIENT_DebuggerRequest routine, implemented support for
...
DEBUGGER_FREEZE_ALL/DEBUGGER_UNFREEZE_ALL requests.
Run wine server in the main wine process.
Bugfix: never free initial thread!
1999-04-11 17:13:03 +00:00
Ulrich Weigand
9e696f8906
Non-functional PROCESS_Suspend/ResumeOtherThreads removed.
1999-04-11 17:11:09 +00:00
Marcus Meissner
c26063818f
- Started multithreading for FreeBSD (incomplete, but some
...
applications now at least start up again).
- Use _thread_sys_sigaction/_thread_sys_sigaltstack.
- CR2 on pagefault gets passed in sc_err (some kind of kludge in
FreeBSD owns fault handling we can use)
1999-04-11 15:20:29 +00:00
Ulrich Weigand
f6461fe290
Allow user APCs with NULL 'func' (just wake up the thread).
1999-04-11 15:02:18 +00:00
Ulrich Weigand
7761cbe0b6
Implemented 'kernel services thread'.
1999-04-11 15:01:20 +00:00
Ulrich Weigand
2e658768dc
Send USIG_PROCESS_CREATE signal.
...
Bugfix: GetProcessDword offset -8 should return parent process ID.
1999-04-11 12:06:04 +00:00
Ulrich Weigand
8139c30125
Implemented PROCESS_CallUserSignalProc().
...
Send USER signals at various appropriate places.
Moved [GS]etProcessDword() to scheduler/process.c.
1999-04-01 11:43:05 +00:00
Ulrich Weigand
e469a583ca
Fixed sequence of DLL_PROCESS_DETACH notification calls.
...
Moved PE_MODREF flags to WINE_MODREF level.
Better handling of LoadLibraryEx flags.
PE_InitTls() changed to work only on the current thread.
1999-03-27 16:45:57 +00:00
Alexandre Julliard
1c40024b15
Added cmd line in new_process request.
1999-03-27 16:21:05 +00:00
Ulrich Weigand
4cf15118eb
All threads created with CreateThread are 32-bit threads.
1999-03-27 16:19:00 +00:00
Alexandre Julliard
875c4b3c61
Added server pid and tid in init_thread request, and use them in
...
CLIENT_InitThread.
1999-03-23 14:09:41 +00:00
Ulrich Weigand
93b23d746d
Run Win32 processes in their own threads.
...
Process exit sequence adapted.
1999-03-22 10:35:44 +00:00
Alexandre Julliard
f016752b45
Changed process initialisation to use the new server requests.
...
Started to move the process init to the right context, not finished yet.
1999-03-21 19:26:25 +00:00
Ulrich Weigand
4526f2ec66
Pass new arguments (suspend/inherit) to the server.
1999-03-16 16:28:59 +00:00
Ulrich Weigand
2f2898b571
Handle suspend/resume_thread requests in phase STARTING correctly.
...
Set initial suspend count for threads created with CREATE_SUSPENDED.
Set 'inheritable' flag for process/thread handles.
1999-03-16 16:28:36 +00:00
Alexandre Julliard
301f2c6922
Separated thdb freeing code from ExitThread. Now we only need to call
...
THREAD_FreeTHDB from somewhere...
1999-03-14 19:48:04 +00:00
Alexandre Julliard
5eca3afa9f
Do not call ExitThread() on server communication errors.
1999-03-14 19:46:35 +00:00
Marcus Meissner
88e651dac3
Fixed newly introduced and some leftover warnings.
1999-03-13 18:20:26 +00:00
Ulrich Weigand
3366f18464
Implemented _ConfirmWin16Lock (KERNEL32.96).
1999-03-10 16:25:22 +00:00
Alexandre Julliard
3f09ec5263
CLIENT_WaitReply: don't clear last error on success; fixed callers
...
accordingly (based on a patch by Juergen Schmied).
1999-02-28 19:25:51 +00:00
Alexandre Julliard
96c08d817c
Use server handles directly for Win32 handles. Removed use of K32OBJ.
1999-02-28 13:27:56 +00:00
David Luyer
ee517e863e
- fixed missing stdlib.h and string.h includes everywhere
...
- removed a couple of unneeded stdlib.h and stdio.h includes
1999-02-28 12:27:56 +00:00
Alexandre Julliard
8feb3bc177
Process and thread id now use the server-side id instead of an
...
obfuscated pointer.
1999-02-28 12:25:03 +00:00
Ulrich Weigand
6e0d38603e
Process creation sequence reorganized:
...
- Removed instance data segment for all but NE modules.
- Check binary type in CreateProcess before loading module.
- Unix process creation moved from WinExec to CreateProcess.
- Bugfix: fill in thdb->teb.htask16 member correctly.
1999-02-28 11:14:32 +00:00
Alexandre Julliard
875d112dd7
Removed dst_handle in duplicate_handle request.
...
Added inherit flag in create_mapping request.
1999-02-28 10:12:48 +00:00
Alexandre Julliard
a396029270
Large-scale renaming of all Win32 functions and types to use the
...
standard Windows names.
1999-02-26 11:11:13 +00:00
Ulrich Weigand
1d90d69f08
Modified process creation sequence: call PE_CreateModule in the
...
context of the new process (in TASK_CallToStart).
Changed all PE/Module routines so as to always operate on the current
process; adapted all callers.
1999-02-24 14:27:07 +00:00
Alexandre Julliard
214399f283
Changed initial process creation to avoid memory allocations.
...
Removed a few unused fields in PDB and THDB.
1999-02-21 18:35:27 +00:00
Alexandre Julliard
13e55192b9
Removed thread queue functions.
...
Changed initial thread creation to avoid memory allocations.
Moved server startup to THREAD_CreateInitialThread.
1999-02-21 18:34:18 +00:00
Alexandre Julliard
d16927efdb
Removed use of per-thread wait_struct, cleaned up a bit.
1999-02-21 18:29:59 +00:00
Alexandre Julliard
d6cb784269
Removed MEM_MAPPED_FILE_Ops.
1999-02-21 18:28:40 +00:00
Marcus Meissner
04c3e1d456
Removed a lot of occurences of windows.h (and added necessary other
...
includes).
1999-02-19 10:37:02 +00:00
Francois Gouget
289211cc3b
Fixed a number of warnings concerning the matching of the printf
...
format string and the associated parameters (actually it's mostly
TRACE and FIXMEs).
1999-02-17 16:15:11 +00:00
Marcus Meissner
317af320cf
Optimized include/*.h: (recursively) include all headers needed by
...
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.
1999-02-17 13:51:06 +00:00
Alexandre Julliard
c521db616a
Removed CONSOLE_Ops.
1999-02-14 18:04:20 +00:00
Alexandre Julliard
60742b0408
Removed PROCESS_GetPtr.
1999-02-14 17:51:01 +00:00
Stephane Lussier
91bb1f974c
- Cleaned up the message queue when a thread exit (but not the process).
...
- Modified QUEUE_DeleteMsgQueue to exit gracefully (without crashing Wine) if
queue link list is corrupted.
1999-02-09 14:07:07 +00:00
Noel Borthwick
b427856b45
Added management and allocation of the PERQUEUEDATA structure.
1999-02-05 10:37:53 +00:00
Geoff Clare
0b78af7c01
Fix to allow for recvmsg() returning less data than is needed.
1999-01-31 18:57:28 +00:00
Alexandre Julliard
d757fc60bb
Clear last error on all successful requests.
1999-01-31 15:06:28 +00:00
Juergen Schmied
ab9ac83e97
List handles WaitForMultipleObjects is waiting for when running with
...
-debugmsg +win32.
1999-01-31 09:22:14 +00:00
Alexandre Julliard
47b3f322ce
Commented out EXEC_SERVER
1999-01-26 13:29:00 +00:00
Guy Albertelli
c66f5d5983
Added stub for SetThreadLocale.
1999-01-24 09:59:14 +00:00
Alexandre Julliard
62a8b43301
Hacked server-side device support
...
Added user APCs support.
Many changes to the xterm console to make use of the server (not
finished yet).
Moved some other small stuff to the server.
1999-01-19 17:48:23 +00:00
Alexandre Julliard
8da12c43a9
Group commit for recovery after disk crash.
...
See Changelog for changes WRT release 990110.
1999-01-17 16:55:11 +00:00
Alexandre Julliard
638f169b1e
Recovery of release 990110 after disk crash.
...
See Changelog for changes between 990103 and 990110.
1999-01-17 16:32:32 +00:00
Alexandre Julliard
0562539d18
Implemented file sharing checks in the server.
...
Added set file time server request.
Overall clean up of the file handling (DOS device handling is now
broken, should be redone).
1999-01-03 11:55:56 +00:00
Alexandre Julliard
eafae34251
Got rid of CLIENT_GetProcessInfo.
1999-01-01 18:59:01 +00:00
Alexandre Julliard
94401dc0c1
Fixed CloseHandle() on global handles.
1999-01-01 18:46:35 +00:00
Alexandre Julliard
dbf2bf00bc
Moved MsgWaitForMultipleObject implementation to USER routines, using
...
a normal Win32 event.
1999-01-01 17:05:53 +00:00
Alexandre Julliard
6ebbe3c949
Cleaned up and removed some no longer used code.
1999-01-01 17:04:00 +00:00
Alexandre Julliard
f8e741bcbe
Take into account handle inheritance flag.
1999-01-01 16:53:11 +00:00
Alexandre Julliard
d1717c6b1e
Re-implemented using a real semaphore.
1998-12-31 15:54:18 +00:00
Alexandre Julliard
55443878fc
Removed client-side wait functions; all waiting is now done through
...
the server.
1998-12-31 15:52:06 +00:00
Alexandre Julliard
748ff0f985
Changed server wait logic a bit.
1998-12-30 12:11:52 +00:00
Alexandre Julliard
942e6d778c
Added anonymous pipe support
1998-12-30 12:08:20 +00:00
Alexandre Julliard
338e757d08
Added beginnings of server-side file handling.
...
Added -debugmsg +server support.
Better server request dumping for varargs requests.
1998-12-27 15:28:54 +00:00
Alexandre Julliard
c6e45ed546
Added add_queue/remove_queue to server object operations.
...
Moved select() loop functions to select.c.
1998-12-27 08:35:39 +00:00
Patrick Spinler
3f8e1e4d44
Implemented CreateToolhelp32Snapshot, including two of the routines
...
using snapshots, Process32First and Process32Next.
1998-12-11 15:04:11 +00:00
Ulrich Weigand
ca1c74751a
Bugfix: Set the TEBF_WIN32 flag in teb.flags for 32-bit threads.
1998-11-24 20:47:17 +00:00
James Sutherland
577db37b2a
More complete implementation of the SetCtrlHandler() function (and the
...
related console functions).
1998-11-08 15:09:08 +00:00
Marcus Meissner
e0e248eaee
Solaris redefines ERR and CS, fixed occurances.
...
Solaris has TRAPNO in its sigcontext, added to sig_context.h
1998-11-06 16:30:41 +00:00
Huw D M Davies
d0421889c8
Get rid of the redefinition of MAX_PATH and move PROCESSENTRY32
...
definition to toolhelp.h.
1998-11-01 19:23:52 +00:00
Ulrich Weigand
c75d0e16bd
Implemented new Wine startup sequence, separating startup into
...
KERNEL/USER/GDI related parts, allowing native replacement.
Implemented initial 'kernel' task.
1998-11-01 17:59:35 +00:00
Andreas Mohr
6569ba3f09
Added .spec entry for KERNEL.RegisterServiceProcess.
1998-11-01 13:32:44 +00:00
Patrick Spinler
24ee621110
Added stubs for Process32First/Process32Next.
1998-10-28 14:20:19 +00:00
Ulrich Weigand
4a546903a7
Added support for global handles, implemented ConvertToGlobalHandle.
...
Allocate startup data and 16-bit stack for initial process.
1998-10-24 12:00:33 +00:00
Marcus Meissner
05e2d3b456
LoadLibraryExW spec added (function was there).
...
SetProcessPriorityBoost stub added.
1998-10-24 11:18:59 +00:00
Uwe Bonnes
c36a154ebb
More off-by-one errors fixed.
1998-10-24 09:17:43 +00:00
Marcus Meissner
a763ed9786
Added ordinal for two syslevel functions.
1998-10-22 17:02:25 +00:00
Uwe Bonnes
f27920599a
Fixed off by one error in HANDLE_GetObjPtr.
1998-10-19 08:41:52 +00:00