Alexandre Julliard
3e2517caa7
Added Get/SetThreadContext support through the server.
2000-01-20 18:59:03 +00:00
Juergen Schmied
74341020f4
- added NT fields to TEB
...
- moved tls-fields and some wine specific fields to a higher offset
- added some documentation
- initialisation of the UnicodeString
2000-01-15 22:22:27 +00:00
Alexandre Julliard
95e7acb95d
Moved allocation of the socket pair for a new thread to the server.
2000-01-04 02:40:22 +00:00
Peter Ganten
6619f5a71a
Implemented WaitForInputIdle.
2000-01-01 22:38:20 +00:00
Juergen Schmied
71e69dd8ed
NT allocates one page as TEB. Some native NT-dlls are using this.
1999-12-25 22:49:33 +00:00
Alexandre Julliard
000c9800b6
Use waitable timers to implement service thread timers.
1999-12-13 01:42:03 +00:00
Andreas Mohr
7fb732e597
Fixed compiler warnings.
1999-12-12 00:47:51 +00:00
Ulrich Weigand
89a79d21bf
Bugfix: Show main window if CreateProcess was called without the
...
STARTF_USESHOWWINDOW flag.
1999-12-10 03:34:21 +00:00
Dimitrie O. Paun
dd03cc19fd
Make use of the DEFAULT_DEBUG_CHANNEL where appropriate.
...
Use the default version of FIXME, ERR, WARN, TRACE for the default
channel.
1999-12-08 03:56:23 +00:00
Ulrich Weigand
0106f85e5f
Delay sending debug events until process initialization is complete.
1999-12-08 03:28:14 +00:00
Ulrich Weigand
979000e038
Call 16-bit instead of 32-bit UserSignalProc entry point.
...
Don't load USER32.DLL unless requested by the program.
Bugfix: Pass the correct thread ID to UserSignalProc.
1999-12-05 02:48:53 +00:00
Ulrich Weigand
237e8e95b0
Fixed 32-bit module name handling to conform better to Win9x.
...
Removed OFSTRUCT passing during process creation sequence.
Bugfix: don't set exe_modref when LOAD_LIBRARY_AS_DATAFILE is set.
1999-12-04 04:04:58 +00:00
Alexandre Julliard
d083a7bd0c
Fixed DEBUG_ONLY_THIS_PROCESS again (thanks to Ulrich Weigand).
1999-11-29 02:10:56 +00:00
Alexandre Julliard
ad47a30f5e
Implemented waitable timers.
1999-11-29 01:58:35 +00:00
Alexandre Julliard
d16319ce22
Store all object names as Unicode in the server.
1999-11-25 21:30:24 +00:00
Alexandre Julliard
1d2ba529aa
Added current context to the exception debug event sent to the server.
1999-11-24 01:24:50 +00:00
Alexandre Julliard
6f1b642479
Raise an exception when a critical section wait failed.
1999-11-24 01:14:04 +00:00
Alexandre Julliard
af04ebe4bb
Added server_call_noerr function that avoids touching the last error.
1999-11-21 21:02:06 +00:00
Niels Kristian Bech Jensen
1d5bc469cc
Removed extra #include statements.
1999-11-21 02:14:36 +00:00
Alexandre Julliard
31670003bc
Fixed meaning of DEBUG_ONLY_THIS_PROCESS flag.
1999-11-21 01:06:29 +00:00
Patrik Stridvall
b9010214d2
Added better missing function emulation.
1999-11-13 22:23:35 +00:00
Alexandre Julliard
eef7025ef8
Added support for WriteProcessMemory through the server.
1999-11-13 19:54:54 +00:00
Alexandre Julliard
8b8828f578
Added support for ReadProcessMemory through the server.
1999-11-12 21:39:14 +00:00
Alexandre Julliard
ec7bb2391d
Added support for CREATE_SUSPENDED flag in CreateProcess.
1999-11-12 03:35:25 +00:00
Ulrich Weigand
d024d5e942
Bugfix: LOAD_DLL_DEBUG_EVENT lpImageName parameter was incorrect.
1999-11-10 20:15:04 +00:00
Alexandre Julliard
9103daf300
Install the wine server in $(bindir) and exec it from there.
1999-11-08 00:03:53 +00:00
James Abbatiello
161693e4f9
Addresses issues with multiple processes accessing non-global critical
...
sections.
1999-11-07 19:22:46 +00:00
Alexandre Julliard
a67d71648d
Added special handling for the stdio handles in CloseHandle.
1999-11-04 02:49:06 +00:00
Alexandre Julliard
3b6a3e777c
Set close-on-exec flag on server socket.
1999-10-31 22:26:35 +00:00
Patrik Stridvall
96336324cf
- Added missing configuration #if:s and #includes:s.
...
- Minor configuration related changes.
1999-10-24 22:13:47 +00:00
Ulrich Czekalla
c9cc20cf8b
New channel 'debugstr' used to print OutputDebugString API calls.
1999-10-24 00:06:17 +00:00
Ulrich Weigand
8a64b83eb6
Bugfix: don't call ExitProcess() before SYSLEVEL_Init().
1999-10-23 14:15:33 +00:00
Alexandre Julliard
3d06d20bab
Moved all signal support to a new platform-specific file.
...
Make use of the per-thread signal stack (Juergen Lock).
Fixed %fs in signal handler for non FS_sig case (Ulrich Weigand).
1999-09-27 10:58:45 +00:00
Ulrich Weigand
f0a1c2f741
Don't create thunk for CreateThread16 proc, call it directly.
1999-09-20 18:45:28 +00:00
Ron Record
e977d6ca5c
Added support of __thr_errno for reentrance on UnixWare.
1999-09-05 12:32:05 +00:00
Ulrich Weigand
cebd60b33c
Removed global variable pCurrentTeb.
1999-09-03 16:45:44 +00:00
Patrik Stridvall
2c684081c1
Fixed some of the issues reported by Solaris Lint.
1999-07-31 17:36:48 +00:00
Patrik Stridvall
26ffb3cd76
Fixed/added missing/wrong function prototypes and made internal
...
functions static.
1999-07-31 14:41:43 +00:00
Patrik Stridvall
478eee17be
Eliminated warnings.
1999-07-31 13:13:23 +00:00
Ulrich Weigand
4d550350f3
Bugfix: Install task-entry breakpoint *after* EXE module is initialized.
1999-07-30 18:05:07 +00:00
Alexandre Julliard
8f44baf5c4
Do not output text in OutputDebugStrAW when not being debugged
1999-07-20 15:13:20 +00:00
Ulrich Weigand
3dff7bb842
Modularized CallFrom/To16 routines. Adapted dependent routines,
...
16-bit snoop/relay debugging, and make rules.
1999-07-11 13:58:31 +00:00
Howard Abrams
132774804e
Added checks for sys/errno.h, sys/signal.h and sys/mman.h.
1999-07-10 13:16:29 +00:00
Ulrich Weigand
203780eb6e
Removed all EVENT_Synchronize( FALSE ) calls; use a periodic callback
...
calling XFlush() instead.
1999-07-10 10:24:31 +00:00
Ulrich Weigand
fbea530884
On NE process creation, move major part of NE EXE module loading and
...
NE instance creation into the child process.
1999-07-03 12:26:29 +00:00
Alexandre Julliard
617955db88
Changed CONTEXT into CONTEXT86 everywhere we really want an i386
...
context.
Added #ifdef __i386__ around accesses to 386 registers in the generic
CONTEXT structure.
1999-06-26 18:40:24 +00:00
Patrik Stridvall
1ed4ecffa8
ANSI C fixes.
...
Removed warnings.
Made the include files self-sufficient.
Some Solaris fixes.
1999-06-26 14:58:24 +00:00
Alexandre Julliard
ebe29ef376
Further server optimizations:
...
- merged request and reply structures
- build requests directly into the buffer to avoid a copy
1999-06-26 08:43:26 +00:00
Ulrich Weigand
26c21f1f57
Load USER32.DLL before calling UserSignalProc.
1999-06-22 19:12:14 +00:00
Alexandre Julliard
5bc78089db
Made server communication faster by using a shared memory block.
...
A few other optimizations in request processing in the server.
Moved automatically generated request definitions to server.h and
removed include/server/request.h.
1999-06-22 17:26:53 +00:00
Alexandre Julliard
0a860a01f9
Merged THDB and TEB structures.
...
Made SetLastError(), GetCurrentThreadId() and PROCESS_Current() inline.
1999-06-22 11:43:42 +00:00
Alexandre Julliard
55e1af93b5
Added DebugBreak.
1999-06-18 18:24:47 +00:00
Ulrich Weigand
23f4b09cc3
Removed broken hack to support shared DLLs (e.g. USER32.DLL) and
...
replaced it by a somewhat less broken hack :-/
1999-06-13 08:34:42 +00:00
Andreas Mohr
cd3278be3f
Rearrange winver detection code and cache the winver value we
...
determined in the PDB to speed up.
1999-06-12 14:46:54 +00:00
Guy Albertelli
0e65b38ff3
Add new "walk" command options to list processes and modref's.
1999-06-12 10:49:36 +00:00
Eric Pouech
63c7cdf196
Made the service thread instanciable in every process.
1999-06-12 08:24:23 +00:00
Alexandre Julliard
1aa2641636
Use the normal environment routines to build the env db of the initial
...
process.
1999-06-11 18:33:46 +00:00
Ulrich Weigand
ed49003188
16-bit scheduler reorganized: run all tasks in their own thread.
...
Process creation sequence adapted to new scheduler.
1999-06-06 14:47:50 +00:00
Ulrich Weigand
ad6657e334
Removed SERVICE_Exit().
1999-06-06 14:43:34 +00:00
Alexandre Julliard
54a39e253c
Got rid of THREAD_InitDone.
...
Made THREAD_Current() inline.
Moved server tid into TEB.
1999-05-29 14:27:26 +00:00
Alexandre Julliard
bda3969d98
Removed process argument to PROCESS_CallUserSignalProc.
1999-05-24 15:01:05 +00:00
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