Alexandre Julliard
8d1462b614
pthread_atfork: don't call critical section functions before
...
initialization is done.
2000-11-07 20:32:52 +00:00
Alexandre Julliard
908464d448
Authors: Andreas Mohr <amohr@codeweavers.com>, Dimitrie O. Paun <dimi@cs.toronto.edu>, Patrik Stridvall <ps@leissner.se>
...
Various warning fixes.
2000-11-01 03:11:12 +00:00
David Elliott
44f84b55f3
Added basic working stubs of new Windows 2000 API functions.
2000-10-29 01:24:54 +00:00
Jeremy White
51e4657694
Added support for a WINELOADER environment variable which allows the
...
specification of a different binary loader.
2000-10-25 20:28:22 +00:00
Alexandre Julliard
57f05e1913
Converted a few more server requests to the new mechanism.
2000-10-15 00:40:25 +00:00
Alexandre Julliard
aef9a36059
Use special environment variables to transmit the cwd of the various
...
drives to child processes (based on a patch by Andreas Mohr).
2000-10-03 04:19:16 +00:00
Alexandre Julliard
d76f9f9637
Implemented a bunch of large integer functions in ntdll.
2000-10-01 01:40:42 +00:00
Alexandre Julliard
afb49ead82
Moved a bunch of routines to kernel32.dll (with the help of
...
Dimitrie O. Paun).
2000-09-29 20:48:04 +00:00
Alexandre Julliard
baa15566a0
Moved critical section implementation to ntdll.
2000-09-29 00:31:23 +00:00
Alexandre Julliard
15bfcd0398
Moved $(MODULE).o rule out of Make.rules into the individual
...
Makefiles.
2000-09-29 00:28:25 +00:00
Alexandre Julliard
072dfb57e3
Removed inclusion of wine/winestring.h from winbase.h and added it to
...
the C files that need it.
2000-09-25 23:30:56 +00:00
Andreas Mohr
c941effc24
Make GetTickCount not use the whole Unix epoch (since 1970) any more,
...
since that crashed several games or caused problems with them as they
aren't used to a high Windows uptime of more than 24.9 days.
2000-09-22 22:37:56 +00:00
Roberto Augusto Pungartnik
19f8dda01b
Added S_ISFIFO check for Solaris.
2000-09-22 22:19:58 +00:00
Andreas Mohr
20cd9356a8
- fixes debugger output
...
- get rid of wrong comments
- fix comments
- .spec spelling fix
- improve warning message
2000-09-12 23:40:40 +00:00
Alexandre Julliard
50097a0ce8
Added WINESERVER environment variable to allow overriding the normal
...
server search sequence.
2000-09-10 03:24:28 +00:00
Alexandre Julliard
4b15574923
Implemented RtlpWaitForCriticalSection and RtlpUnWaitCriticalSection.
2000-09-10 03:16:08 +00:00
Andreas Mohr
9714152e01
Avoid crash on empty command-line.
2000-09-02 23:18:16 +00:00
Alexandre Julliard
92643003cf
Converted a lot of server requests to the new exception handling
...
mechanism.
2000-08-31 01:59:51 +00:00
Alexandre Julliard
9c2370bd75
Added exception handling wrapper to a number of server requests.
...
Changed a few requests to use the new vararg mechanism.
2000-08-30 00:00:48 +00:00
Alexandre Julliard
8611353053
Added the data structures and macros that will be needed to support
...
reentrant server requests.
2000-08-29 03:54:30 +00:00
Alexandre Julliard
973ce4a088
Moved TASK_Create call to KERNEL initialisation routine.
...
Clear last error code before calling main entry point (reported by
James Juran).
2000-08-25 22:02:14 +00:00
Alexandre Julliard
ea1afcef49
Added APC support in waitable timers.
2000-08-22 20:08:37 +00:00
Andreas Mohr
d398aacfeb
- don't return FALSE for system process changes
...
- SHUTDOWN_NORETRY is 1 and has to be in winbase.h
2000-08-21 20:17:56 +00:00
Mike McCormack
8d5db55cc5
Save GET_APCS data before calling any asynchronous procedure calls, in
...
case the server is called during the APC.
2000-08-18 23:40:45 +00:00
Huw D M Davies
94237ded13
Fix for starting server from the current directory.
2000-08-14 13:26:30 +00:00
Alexandre Julliard
c10c9ef4f1
Made server startup more robust against races caused by a previous
...
server terminating at the same time.
2000-08-11 21:16:53 +00:00
Alexandre Julliard
5ab9d860f2
Removed some unnecessary #includes and dll dependencies.
2000-08-09 22:35:05 +00:00
Alexandre Julliard
52900c818f
Make PDB, ENVDB and STARTUPINFO global variables.
...
Added 'module' field in PDB, and removed Wine-specific fields.
2000-08-09 22:33:42 +00:00
Alexandre Julliard
46733de12b
Removed winver and service_table from the PDB and made them static
...
variables.
2000-08-09 22:31:24 +00:00
Alexandre Julliard
081ee94117
- Fixed resource functions to work directly from the HMODULE instead of
...
requiring a modref.
- Attempted to get LOAD_LIBRARY_AS_DATAFILE right (based on patches by
Eric Pouech and Dusan Lacko).
- Simplified modref structure and handling.
2000-08-07 04:12:41 +00:00
Alexandre Julliard
93652e1a68
Moved a bunch of functions out of libwine/kernel/gdi into USER.
2000-08-04 04:21:02 +00:00
Alexandre Julliard
09ddb59142
Make USER and GDI separate dlls.
2000-08-03 22:22:42 +00:00
Alexandre Julliard
6c9d83aa4c
Added imports of user32/gdi32/kernel32 wherever necessary.
2000-08-03 00:04:24 +00:00
Ove Kaaven
128843046d
DOS binary support has been restored.
2000-07-31 21:01:46 +00:00
Alexandre Julliard
a3e0cfc5fb
Get full path of argv[0] before we change directories.
...
Make sure process names are long path names.
Cleaned up initialisation a bit.
2000-07-16 18:21:34 +00:00
Marcus Meissner
dad709122a
Transmit current directory settings to newly created processes.
2000-07-16 15:42:22 +00:00
Andreas Mohr
913ce1f2f8
Extend the WSOCK32 warning in certain functions to mention WS2_32 too.
2000-07-15 21:29:34 +00:00
Andreas Mohr
dccc070d42
Better error message for really clueless newbies.
2000-07-11 22:06:13 +00:00
Alexandre Julliard
bec3244f39
Lazy initialisation of thread locale.
2000-07-10 15:23:04 +00:00
Juergen Schmied
6ee61f9ba1
Moved setting the locale value to the right position.
2000-07-10 13:06:58 +00:00
Slava Monich
fb8934d4bd
Implementation of Get/SetThreadPriorityBoost.
2000-07-08 12:47:30 +00:00
Alexandre Julliard
596921da0c
Make sure the cmdline passed to CreateProcessA is writeable (thanks to
...
Peter Ganten <peter@ganten.org>).
2000-06-24 20:53:47 +00:00
Alexandre Julliard
6d96e30171
ConvertToGlobalHandle: fixed handle leak.
2000-06-14 21:17:56 +00:00
Juergen Schmied
79d850f2d7
- implemented Get/SetThreadLocale
...
- added comment about OleErrorInfo field in TEB
2000-06-12 21:56:02 +00:00
Alexandre Julliard
8fe0551aa3
Removed a few unnecessary includes.
2000-06-08 04:57:58 +00:00
Alexandre Julliard
a37dec0c7e
Pass the main exe name in the CREATE_PROCESS debug event.
2000-06-08 00:57:24 +00:00
Ulrich Weigand
06bf01768d
Make a better guess to find the top of the initial stack.
...
Fixed FreeBSD compile problem (thanks to Gerald Pfeiffer).
2000-06-08 00:39:59 +00:00
Alexandre Julliard
42cc2bdf46
Setup signal handling and exceptions only after REQ_INIT_PROCESS_DONE
...
has been sent, to avoid deadlocking the debugger.
2000-06-07 03:49:41 +00:00
Patrik Stridvall
7980a50cb7
Fixed issues found by winapi_check.
2000-06-07 02:15:39 +00:00
Ulrich Weigand
afd6a4b810
Updated support for Solaris/Sparc architecture.
2000-06-04 01:48:05 +00:00
Ulrich Weigand
7e85ea7c86
Moved stack switch handling (large stack) to sysdeps.c
...
Enable exception dispatch while on large stack.
2000-06-04 01:35:43 +00:00
Alexandre Julliard
7fe09bce86
Moved kernel initialization to kernel_main.c
2000-06-03 04:49:40 +00:00
Alexandre Julliard
c23b1ee3da
Make sure main_exe_name is a DOS filename (thanks to Uwe Bonnes).
2000-06-01 22:48:39 +00:00
Alexandre Julliard
c5e433a3a6
Moved idle event handling to the server.
2000-05-30 19:48:18 +00:00
Alexandre Julliard
c192ba2468
Exec a separate wine binary for every win32 process so that they run
...
in separate address spaces.
Run 16-bit tasks as Win32 threads, not processes.
2000-05-29 21:25:10 +00:00
Andreas Mohr
cd1323765c
Use WARN() instead of TRACE() in DebugOutputA().
2000-05-23 01:13:07 +00:00
Alexandre Julliard
8c8237b756
Specify the service thread timers in ms instead of us.
2000-05-10 04:43:32 +00:00
Ove Kaaven
d2937316a5
Fixed jump_alias for non-PIC, and disabled it for PIC, since it
...
doesn't work for PIC right now. This fixes current crashing sigaction
calls.
2000-05-09 22:32:25 +00:00
Alexandre Julliard
d27624be16
Store process file name in startup info.
...
Fixed exe_file handling.
2000-05-03 18:42:40 +00:00
Alexandre Julliard
ce686031ba
Fixed default thread stack size.
2000-05-03 17:45:14 +00:00
Alexandre Julliard
8c21dfcf0f
Setup the initial thread %fs from a constructor.
2000-05-01 21:21:31 +00:00
Alexandre Julliard
5b4f3e8d6d
Rewrote Unix process launching to allow passing startup information to
...
Winelib apps. Improved handling of execve() failures.
2000-05-01 16:24:22 +00:00
Alexandre Julliard
95a4332f32
Added atfork support.
2000-05-01 16:19:40 +00:00
Eric Pouech
f61d7e0a24
Enhanced libc's pthread configuration detection.
2000-04-29 16:44:19 +00:00
Ove Kaaven
47d72ff801
Made pthread_kill_other_threads_np and pthread_atfork fixmes less
...
obtrusive.
2000-04-29 14:15:31 +00:00
Ove Kaaven
1f9b4b0a8f
Removed init_sect. Use Interlocked* functions instead.
2000-04-28 20:00:20 +00:00
Ove Kaaven
1abdb6f74d
Override fork().
2000-04-28 14:44:05 +00:00
Ove Kaaven
166209a725
Added some more pthread overrides.
2000-04-23 20:01:45 +00:00
Alexandre Julliard
b44595283f
Improved Winelib apps initialisation code. No longer need to link
...
winestub.o with Winelib apps.
2000-04-15 21:00:55 +00:00
Ove Kaaven
f19f07d5f3
POSIX threads emulation, tricks glibc into being threadsafe.
2000-04-14 14:47:02 +00:00
Alexandre Julliard
d804111dc5
Made server launching somewhat cleaner and faster.
2000-04-14 14:42:41 +00:00
Alexandre Julliard
6a72dc52bd
Load done event now created by the server.
2000-04-14 13:42:00 +00:00
Alexandre Julliard
3ef9322915
Cleanup thread stack allocation. Use a single VirtualAlloc for TEB and
...
the various stacks.
2000-04-13 17:03:22 +00:00
Alexandre Julliard
114830e8a9
Made GetProcessHeap(), GetCurrentProcessId(), GetCurrentThread() and
...
GetCurrentProcess() inline.
2000-04-11 20:01:59 +00:00
Alexandre Julliard
227a0894d4
Removed a number of global handle allocations and critical section
...
initializations.
2000-04-08 21:06:06 +00:00
Alexandre Julliard
11342151c9
Temporary hack to share handles between processes sharing the same
...
address space.
2000-04-08 21:02:47 +00:00
Alexandre Julliard
416a00d2bc
Added lazy initialization of critical sections, based on a patch by
...
Andrew Lewycky.
2000-04-08 20:50:06 +00:00
Alexandre Julliard
de1d5ad444
Added support for WINEPREFIX environment variable.
2000-04-06 20:36:17 +00:00
Alexandre Julliard
8a971bfec0
Fixed file descriptor leaks.
2000-04-04 19:57:23 +00:00
Alexandre Julliard
0e37eaaca8
Commented out exit() call on ExitProcess for now.
2000-03-30 19:31:02 +00:00
Patrik Stridvall
2d6457c11a
Added/fixed some documentation reported by winapi_check.
2000-03-28 20:22:59 +00:00
Alexandre Julliard
31741747b9
Put CLONE_FILES back in, it is still breaking too many things.
2000-03-28 18:47:24 +00:00
Alexandre Julliard
9a0e28f153
Fixed a couple of file descriptor leaks.
...
Always call USER signal proc in the right context.
Cleaned up THREAD_Create.
2000-03-25 19:14:37 +00:00
Patrik Stridvall
3b233623cc
Fixed some warnings.
2000-03-24 21:19:02 +00:00
Patrik Stridvall
98fde73f14
Fixed some issues reported by winapi_check.
2000-03-24 20:43:33 +00:00
Dimitrie O. Paun
9ad9636725
Removed most calls to xmalloc/xrealloc.
2000-03-19 14:29:50 +00:00
Alexandre Julliard
9b59da0dd9
Misc small cleanups.
2000-03-18 22:25:41 +00:00
Alexandre Julliard
12f29b5076
Have threads and processes exit more cleanly whenever possible.
2000-03-17 15:16:57 +00:00
Alexandre Julliard
c2ec36877a
Removed PROCESS_IsCurrent().
2000-03-10 22:21:07 +00:00
Alexandre Julliard
ea0d028a0b
Added specific routines for OUTPUT_DEBUG_STRING and EXCEPTION debug events.
...
Generate a breakpoint event on process attach.
Misc cleanups in request handling.
2000-03-10 22:16:10 +00:00
Alexandre Julliard
05f0b71bb3
Store the list of loaded dlls in the server, and generate debug events
...
internally.
2000-03-09 18:18:41 +00:00
Alexandre Julliard
5fb54566d2
Added server protocol version check.
2000-03-08 22:01:02 +00:00
Alexandre Julliard
00641d5b1c
Removed PDB32_DEBUGGED flag and send all debug events unconditionally.
...
Implemented IsDebuggerPresent().
2000-03-08 16:41:37 +00:00
Alexandre Julliard
ff81d78708
Generate CREATE_PROCESS/THREAD debug events internally in the server.
2000-03-08 12:01:30 +00:00
Alexandre Julliard
ca3c9ba4ec
Better implementation of inline functions SetLastError and
...
GetCurrentThreadId. Added asm inlines for Interlocked* functions.
2000-03-07 13:14:27 +00:00
Alexandre Julliard
916f975624
Improved the selector get/set functions.
...
Support ANSI-compatible inline asm (with the help of Patrik Stridvall).
2000-02-26 16:51:13 +00:00
Patrik Stridvall
0ee98cc39f
Fixed ANSI C violations.
2000-02-26 13:17:55 +00:00
Andreas Mohr
296186a85f
Added FIXME comment for entry point parameter.
2000-02-20 19:18:30 +00:00
Alexandre Julliard
67a24c8cfb
Store the handle of the process exe file in the server.
...
Removed PROCESS_Initial().
2000-02-18 21:54:32 +00:00
Dave Pickles
717bf7e9ea
Added definition for STILL_ACTIVE.
2000-02-13 16:04:14 +00:00
Juergen Lock
2d33ab91f4
Added configure check for the unix domain sockaddr length.
2000-02-13 16:03:29 +00:00
Ulrich Weigand
f3bfa3a4b0
Mark initial process as 32-bit for WineLib apps.
...
Use teb->tibflags instead of teb->flags (for Win95 USER32 compatibility).
Removed unused thread event.
2000-01-30 21:16:06 +00:00
Andreas Mohr
8cd93514f0
- add some documentation items
...
- fix some spelling
- fix some warnings
2000-01-29 21:12:58 +00:00
Alexandre Julliard
8bc1d837d2
Use a per-thread buffer and write(2) for debug traces.
...
Removed debug_dumpstr.
2000-01-29 19:46:50 +00:00
Alexandre Julliard
0a7c1f6c5b
Implemented GetThreadSelectorEntry through the server.
2000-01-27 02:54:17 +00:00
Alexandre Julliard
eafa391081
Use argv[0] to locate the server executable.
2000-01-25 21:19:58 +00:00
Alexandre Julliard
2fe57779fb
Made the server listen for new clients on a Unix socket in
...
$HOME/.wine. Newly started wine processes now attach to an existing
server if one is running.
2000-01-25 01:40:27 +00:00
Alexandre Julliard
cb1fc735f0
Changed the server to return STATUS_* error codes.
2000-01-24 21:58:06 +00:00
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
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