Commit graph

598 commits

Author SHA1 Message Date
Alexandre Julliard
680919c2e6 Moved Load/FreeLibrary16 definition to winbase16.h. 2000-05-07 18:39:28 +00:00
Stephane Lussier
bb3c164f73 If we do not find a resource for both (primary lang|sub lang), we try
just (primary lang) before using the default.
2000-05-05 18:17:52 +00:00
Alexandre Julliard
ae719405fb PE_LoadImage: removed version parameter, set last error correctly. 2000-05-03 18:43:11 +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
9e1c48b8a4 Clear the remainder of the page when mapping a section whose size on
disk is not a full page multiple.
Temporarily commented out the VirtualFree call in PE_UnloadLibrary.
2000-04-29 17:23:32 +00:00
Alexandre Julliard
f93eb3e319 Authors: Gavriel State <gavriels@corel.com>, Ulrich Czekalla <ulrichc@corel.com>
Added support for memory mapping of 4k aligned PE binaries.  This can
speed up load times significantly for some applications.
2000-04-28 20:26:35 +00:00
Patrik Stridvall
a4ecb41e49 Added new configuration file option for selecting graphics driver. 2000-04-25 20:12:55 +00:00
Alexandre Julliard
180a088beb Moved PE header definitions to winnt.h where they belong. 2000-04-18 11:58:24 +00:00
Richard Cohen
c775e1ec7f Wrap an exception handler around FindResource. 2000-04-16 20:27:51 +00:00
Alexandre Julliard
c970904c2c Save the registry on server exit without client intervention.
Removed "alt" registry files since we now have symlinks and
WINEPREFIX to replace them.
2000-04-16 17:21:13 +00:00
Alexandre Julliard
8e8f0f52f7 Rewrote command-line parsing of CreateProcessA to be more compatible. 2000-04-15 21:30:33 +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
Eric Pouech
394203f68c Let CreateProcess launch unix executable without a .exe extension.
Fixed arguments passed when creating a unix process.
2000-04-13 19:26:56 +00:00
Alexandre Julliard
227a0894d4 Removed a number of global handle allocations and critical section
initializations.
2000-04-08 21:06:06 +00:00
Patrik Stridvall
54fe8380a1 Fixed some issues reported by winapi_check. 2000-04-06 20:21:16 +00:00
Patrik Stridvall
2d6457c11a Added/fixed some documentation reported by winapi_check. 2000-03-28 20:22:59 +00:00
Hidenori Takeshima
e2905ea478 Fixes for i18n. 2000-03-26 14:43:22 +00:00
Francois Gouget
6d77d3a1df Use min/max instead of MIN/MAX. 2000-03-25 21:44:35 +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
Alexandre Julliard
28c3a1baf3 Moved graphics initialisation to the x11drv/ttydrv dll init code.
Merged event, keyboard and mouse drivers into USER driver.
2000-03-20 18:21:19 +00:00
Alexandre Julliard
69e2bf626f Hack: always try builtin module before elf or elfdll to avoid loading
a builtin dll .so file in the wrong mode.
2000-03-19 21:21:56 +00:00
Dimitrie O. Paun
9ad9636725 Removed most calls to xmalloc/xrealloc. 2000-03-19 14:29:50 +00:00
Eric Pouech
cba7be7954 Now attaching imported DLLs of a winelib executable. 2000-03-19 12:46:56 +00:00
Alexandre Julliard
1dac57f05f Created separate dlls for user,gdi,ttydrv,x11drv.
Fixed Winelib argc handling (thanks to Eric Pouech).
2000-03-19 12:08:09 +00:00
Alexandre Julliard
9b59da0dd9 Misc small cleanups. 2000-03-18 22:25:41 +00:00
Alexandre Julliard
62f824f7cb Avoid calling the *Rect USER functions from inside GDI.
Moved a few USER functions to a more appropriate location.
2000-03-18 22:12:33 +00:00
Alexandre Julliard
fe08568a0d Moved command-line option handling out of the X11 driver.
Added support for "--" prefix on options.
Replaced a few X11 command-line options by wine.conf parameters.
2000-03-18 21:56:10 +00:00
Alexandre Julliard
12f29b5076 Have threads and processes exit more cleanly whenever possible. 2000-03-17 15:16:57 +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
Ulrich Czekalla
cc27998626 wm->modname might be invalid at the end of FreeLibrary. 2000-03-08 18:41:22 +00:00
Patrik Stridvall
6cc47d4924 Removed a lot of unnecessary includes and fixed the compile errors. 2000-03-08 18:26:56 +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
Andreas Mohr
f2df6a2afe Fixed second instance DGROUP loading. 2000-03-07 12:26:16 +00:00
Andreas Mohr
45b5bcf65b Several fixes to MakeProcInstance. 2000-03-07 12:22:35 +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
4654c32122 It seems to be GetModuleFileName16 that checks exe version on whether
to return long or short paths, not GetModuleFileNameA.
2000-02-20 19:15:34 +00:00
Alexandre Julliard
431cf32450 Hard-coded DllPairs configuration; there is no need for the user to
change it.
2000-02-19 20:51:01 +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
Alexandre Julliard
90476d6b4a Moved SystemHeap allocations to the process heap. 2000-02-16 22:47:24 +00:00
Jeremy White
d3e22d9d55 Removed #include of wingdi.h and windef.h from winuser.h (and resolved
the resulting compilation failures).
2000-02-10 19:03:02 +00:00
Alexandre Julliard
b2f6f0e7d2 Removed resource.h. 2000-02-03 01:54:36 +00:00
Ulrich Weigand
9ffd403001 Added .spec keyword 'mode' to allow creating built-in EXE modules.
Use built-in EXE modules for WineLib apps (instead of ELF modules).
Removed dummy ELF module creation.
Removed LIBRES handling.
2000-02-03 01:33:48 +00:00
Ove Kaaven
9b89998113 Cleanup VGA refresh when terminating. 2000-02-03 00:46:00 +00:00
Alexandre Julliard
318f4cefd2 Build most dlls as separate shared libraries. 2000-01-31 05:02:49 +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
Ove Kaaven
43b2ad1973 dosmod protocol revision 3, featuring MPROTECT and ENTERIDLE. 2000-01-30 02:53:56 +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
0dd3655fd0 Removed debugstr.h. 2000-01-29 19:49:58 +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
Uwe Bonnes
c8c800c851 Check for MZ header before trying to decipher the PE header. 2000-01-23 02:27:16 +00:00
Ulrich Weigand
fa5647ab33 Fixed race between Win16 parent and child for first rescheduling
of child process. This fixes WinExec returning too early.
2000-01-17 22:21:29 +00:00
Ulrich Weigand
0b57a5caed Don't access 'wm->modname' after the modref has been flushed. 2000-01-15 22:01:48 +00:00
Alexandre Julliard
74e4a28a34 Built-in DLLs resources are now specified in spec file.
Removed unnecessary flags in built-in DLLs tables.
2000-01-09 04:20:31 +00:00
Marcus Meissner
59db20fbc1 Made virus warning a bit more drastic, since some people don't believe us. 2000-01-05 01:47:30 +00:00
Peter Ganten
6619f5a71a Implemented WaitForInputIdle. 2000-01-01 22:38:20 +00:00
Francois Gouget
baa9bf9a23 Buffer overflows and strncpy fixes. 1999-12-27 05:24:06 +00:00
Alexandre Julliard
bbeaeebb2d PE_FindExportedFunction: use a binary search for function names. 1999-12-27 00:25:25 +00:00
Andreas Mohr
8952dea404 Fixed cmd line length calculation. 1999-12-12 20:16:42 +00:00
Alexandre Julliard
8551f8ca98 Xiang Li
Implementation of a proxy ODBC32 dll.
1999-12-11 23:56:46 +00:00
Ulrich Weigand
f00830086d Bugfix: Added missing 'return' statement. 1999-12-11 23:00:58 +00:00
Ulrich Weigand
4fd8cc37e2 Implemented PE_UnloadLibrary(). 1999-12-10 03:31:25 +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
Andreas Mohr
a2da86898a Added .rc file support for Win16 NE modules.
Moved display.c and mouse.c to separate dll directories.
1999-12-06 01:20:00 +00:00
Eric Pouech
fe08849938 Added typedef to insure compilation on all gcc&egcs versions. 1999-12-05 23:04:00 +00:00
Ulrich Weigand
2149934a2d Bugfix: Call DllEntryPoint for *every* process that loads the DLL, not
just for the first one.
Bypass 32->16->32 transition when calling DllEntryPoint of built-in.
1999-12-05 02:50:38 +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
Eric Pouech
cd841a4a86 Fixed crash when map fails. 1999-12-05 02:45:52 +00:00
Sergei Turchanov
d14aea2c64 Fix for GetBinaryType to return SCS_DOS_BINARY if extended signature
is unknown.
1999-12-04 04:17:37 +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
Niels Kristian Bech Jensen
1d5bc469cc Removed extra #include statements. 1999-11-21 02:14:36 +00:00
Ulrich Weigand
61206bd8a0 Simplified hInstance creation/handling.
Fixes problems with self-loaders creating DGROUP themselves.
1999-11-21 00:50:30 +00:00
Ulrich Weigand
eb94c7d2c4 Adapted to new register function handling. 1999-11-13 23:54:04 +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
Ulrich Weigand
e7957d6b48 Determine expected_version of PE buddies from the SubsystemVersion. 1999-11-10 19:45:56 +00:00
Marcus Meissner
38eae846bb Fixed the relocation hack in PE_InitTls. Added some more for the other
pointerfields in the TLS entry. (With testing help from Jussi
Jumppanen <jussij@zeusedit.com>).
1999-11-07 22:29:18 +00:00
Francois Gouget
edf3e434b0 Added ICMP DLL implementation. 1999-11-07 21:22:17 +00:00
Alexandre Julliard
e582158788 Fixed -debugmsg +server. 1999-11-04 02:51:24 +00:00
Eric Pouech
abe722778f Added built-in msacm.drv and midimap.drv drivers. 1999-10-31 02:23:49 +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
Uwe Bonnes
6111ee6186 Return the size of the needed resource when buffer is NULL for LoadString(). 1999-10-24 20:39:21 +00:00
Uwe Bonnes
f959be9c97 Ignore wrong hInstance. 1999-10-23 19:47:55 +00:00
Jim Aston
031f4faaff Fixed compiling with STRICT. 1999-10-23 19:00:02 +00:00
Ove Kaaven
f45608f639 Winsock rewrite. Sockets are now proper win32 handles.
Internal structures are now really internal.
1999-10-23 16:53:34 +00:00
Ulrich Weigand
c715dea0b2 Bugfix: don't use GetModuleHandle16 in LoadModule16/NE_CreateProcess. 1999-10-23 14:21:00 +00:00
Ulrich Weigand
8a64b83eb6 Bugfix: don't call ExitProcess() before SYSLEVEL_Init(). 1999-10-23 14:15:33 +00:00
Eric Pouech
448b34a088 Correct filename for kernel module is KRNL386.EXE. 1999-10-13 16:02:40 +00:00
Alexandre Julliard
8c81b7439d Authors: Chris Morgan <cmorgan@wpi.edu>, James Abbatiello <abbeyj@wpi.edu>
Removes extraneous comparison of data pointed to by the relocation
offset when no relocation entries exist.
1999-10-13 15:47:38 +00:00
Marcus Meissner
142d94e5b0 WPROCS.ENTRYADDRPROC needs to return something in CX too (fixes
BLINKER selfextracting executables).
1999-10-13 15:46:10 +00:00
Marcus Meissner
a19862fc47 Small hack to check if we need to relocate the TLS directory or not
(some seem to need this pointer relocateable, some already do relocate
it by themselves).
1999-10-13 13:46:24 +00:00
Ulrich Weigand
8c32184814 Bugfix: *Don't* resolve PE imports if asked not to ... 1999-10-13 12:22:47 +00:00
Ulrich Weigand
2a343853ad Bugfix: When loading an executable module fails, don't perform module
cleanup before the corresponding task is destroyed.
1999-10-13 12:21:06 +00:00
Ulrich Weigand
79077f3253 Bugfix: Don't call GetVersionExA too early, to avoid breaking
automatic emulated Windows version detection.
1999-09-29 12:16:16 +00:00
Uwe Bonnes
20f7ef7355 Remember the allocated string to free it. 1999-09-28 13:08:36 +00:00
Ulrich Czekalla
e91d976e17 Fix integer based resource id assumption.
Add support for string based type ids.
1999-09-27 13:31:47 +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
Alexandre Julliard
94822425f0 Fixed memory allocation bug. 1999-09-22 15:18:52 +00:00
Ulrich Weigand
c44ab1f0fd Don't create thunk for task signal proc, call it directly. 1999-09-20 18:48:29 +00:00
Ulrich Weigand
f52e109dea Set 'expected_version' of built-in and dummy modules according to
emulated Windows version.
1999-09-20 15:37:25 +00:00
Ulrich Weigand
3967b0912e Make CallTo16 return stub segment owned by KERNEL. 1999-09-20 15:33:01 +00:00
Ulrich Weigand
a2d5bb393a Bugfix: Improved GetCodeHandle16 / GetCodeInfo16. 1999-09-20 15:30:27 +00:00
Alexandre Julliard
891305b980 Removed __winelib flag. 1999-09-05 16:48:16 +00:00
Pierre Mageau
4ac8db783d Changed CopyImage to accept desiredX, desiredY and LR_COPYFROMRESOURCE.
CURSORICON_FindBestIcon changed to find the correct icon.
ImageList_ReplaceIcon now calls CopyImage internally.
Assign a value for the hIconSm CLASS member (using CopyImage).
1999-09-04 11:16:48 +00:00
Huw D M Davies
8bd7585311 winspool -> winspool.drv 1999-09-04 11:05:41 +00:00
Eric Pouech
c672c00f8b Do not remove .drv from filenames. 1999-09-03 12:36:20 +00:00
Ulrich Weigand
c3d9f28172 Moved implementation of WOW routines to single file.
Added all missing WOW routines, fixed WOWCallback16Ex.
1999-08-18 18:31:26 +00:00
Ulrich Weigand
3df3e5372f Bugfix: restore STACK16FRAME fields in SwitchStackBack16. 1999-08-18 18:24:08 +00:00
Juergen Schmied
1e5f0fea9f New internal dll, exporting already existing path functions. 1999-08-15 17:03:37 +00:00
Michael Karcher
a21fe34596 Make sure we have a dgroup before patching prologs. 1999-08-15 14:16:42 +00:00
Ulrich Weigand
c50a1d05de Adapted to new-style Wine thunks.
Removed some now unnecessary function pointers.
1999-08-15 12:45:01 +00:00
Alexandre Julliard
89f079bfd1 Replaced a few calls to lstr* functions by their CRTDLL or libc
equivalent.
1999-08-08 18:54:47 +00:00
Alexandre Julliard
15de615276 Got rid of dsprintf and related macros. 1999-08-04 12:22:42 +00:00
Alexandre Julliard
7d8cfeb95c Removed IP_reg, SP_reg and FL_reg definitions to avoid potential
aliasing optimization problems.
1999-08-01 14:58:01 +00:00
Alexandre Julliard
bdf83bc546 Removed SIGNAL_MaskAsyncEvents and cleaned up signal handling. 1999-08-01 14:54:16 +00:00
Alexandre Julliard
a1089c59b9 Made stack manipulation macros into inline functions.
Changed a few accesses to context registers to avoid potential
aliasing optimization problems.
1999-08-01 12:51:55 +00:00
Alexandre Julliard
b375678277 Changed INSTR_EmulateInstruction to use a CONTEXT86 instead of a
SIGCONTEXT.
1999-08-01 12:15:12 +00:00
Ulrich Weigand
081daf7d21 Implemented KERNEL.447 (WIN32_OldYield16). 1999-07-31 17:27:38 +00:00
Andreas Mohr
5a08a0288a Fixed the DSEG value in the SEGTABLEENTRY struct. 1999-07-31 13:11:22 +00:00
Huw D M Davies
5fce6fb707 Strip .drv extensions to MODULE_GetLoadOrder. 1999-07-30 18:06:35 +00:00
Ulrich Weigand
4d550350f3 Bugfix: Install task-entry breakpoint *after* EXE module is initialized. 1999-07-30 18:05:07 +00:00
Ulrich Weigand
53477e49c5 GetModuleHandle16: treat Win32 modules correctly. 1999-07-30 17:55:44 +00:00
Ulrich Weigand
d0e15a6b72 Work around 'local extern declaration with attribute' gcc bug. 1999-07-25 11:22:20 +00:00
Ulrich Weigand
2f4bd6617f Unify startup sequence for Wine and WineLib. 1999-07-24 12:20:24 +00:00
Ulrich Weigand
8dbffe70fb Removed MODULE_GetWndProcEntry16().
Use 32-bit window procedures in COMMDLG instead.
1999-07-24 10:27:58 +00:00
Eric Pouech
1564a6ded8 Work around gcc sig11 fault. 1999-07-18 18:38:40 +00:00
Uwe Bonnes
e5266e8a44 Add WINAPI for EntryAddrProc. 1999-07-15 16:09:05 +00:00
Ulrich Weigand
5e59b1a5b4 Added support for 32-bit NE code segments. 1999-07-15 14:31:44 +00:00
Eric Pouech
5d04f652f6 Compiler warnings fix. 1999-07-12 13:41:20 +00:00
Ulrich Weigand
cfa977d9da Fixed bugs introduced by 'register' and 'return' function changes. 1999-07-12 13:39:10 +00:00
Alexandre Julliard
4220b29be9 Take advantage of the new registers saved in the STACK16FRAME to turn
some 'register' functions into normal functions.
Removed the few remaining 'return' functions to simplify relay
handling.
1999-07-11 17:20:01 +00:00
Marcus Meissner
e32a317b76 Removed the old, historical and no longer working IPC support. 1999-07-11 14:13:56 +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
7b81ed4a3c Improved behaviour of GetModuleHandle16 w.r.t dummy modules.
Don't try to call WEP of dummy modules in FreeLibrary16().
1999-07-10 11:42:30 +00:00
Ulrich Weigand
a3afeef325 Fix InitTask() to work if DGROUP was manually resized. 1999-07-10 10:18:26 +00:00
Marcus Meissner
79a3f80008 Made string compare case insensitive in GetModuleHandle16() as a
quick fix for WinWord 6.
1999-07-10 10:12:43 +00:00
Joshua Thielen
a49bb2661d Fixed DestroyAcceleratorTable and implemented CreateAcceleratorTableW. 1999-07-04 12:55:10 +00:00
Marcus Meissner
423813e30c When enumerating resource, only use the lower 31 bit of the name as
the offset (for the highest bit is '1'). Should fix wine-net/257.
1999-07-04 12:44:29 +00:00
Marcus Meissner
623c0d6f94 some small include fixes, some checks for NULL ptrs,
loader/elf.c: fixed the "lib" insertion
crtdll: added fsopen()
dinput: return that we are attached.
1999-07-03 16:01:42 +00:00
Ulrich Weigand
3c717e437c Bugfix: TASK_CallToStart didn't pass correct hInstance to app. 1999-07-03 15:36:45 +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
Dave Pickles
fec232930b Ensure that the command-line passed to the various *CreateProcess
functions contains the path to the program being invoked.
1999-06-26 11:48:26 +00:00
Uwe Bonnes
f1e1c3994c NE_LoadFileModule: Free module when NE_LoadDLLs fails. 1999-06-26 10:19:14 +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
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
94eedf1df0 Use exceptions instead of ctx_debug_call. 1999-06-18 18:25:59 +00:00