Commit Graph

904 Commits

Author SHA1 Message Date
Alexandre Julliard 67a749999a New set of macros for server calls; makes requests without variable
part somewhat faster.
2001-02-27 02:09:16 +00:00
Alexandre Julliard ea2a9a8974 Removed a few Callout functions by doing a GetProcAddress at the time
we actually need the function.
2001-02-20 00:55:17 +00:00
Patrik Stridvall 0c61028734 Documentation ordinal fixes. 2001-01-25 22:22:21 +00:00
Jon Griffiths 4ab1558d8a - Remove <string.h> from winnt.h.
- ntdll: complete crt functions, prevent libc imports, fix sscanf.
2001-01-22 02:17:29 +00:00
Gerard Patel ad8ef99f57 Fix the cmdline argument passed to NE_CreateThread to include string
length.
2001-01-21 21:09:44 +00:00
Alexandre Julliard 3556e1f87d Display the importing dll in the 0xdeadbeef message. 2001-01-20 02:51:19 +00:00
Ulrich Weigand 16a9a2d730 Don't call a NE DLL's DllEntryPoint twice during one single
LoadModule() call.
2001-01-15 22:20:50 +00:00
Alexandre Julliard 4f2df51f7a Replaced GLOBAL_Alloc by GlobalAlloc16 where possible. 2001-01-15 20:13:43 +00:00
Alexandre Julliard 7d5bc5c3f9 Removed some direct accesses to the 16-bit task structure. 2001-01-15 20:09:09 +00:00
Jon Griffiths 1db20bfd33 - Migrate CRTDLL to MSVCRT.
- Many fixes and a load of new functions.
2001-01-10 23:59:25 +00:00
Gerard Patel a77fd7df9d Added a specific debug channel for dll loading (builtin/native). 2001-01-10 22:54:02 +00:00
Alexandre Julliard 105b0f4e64 Use the exe name and file handle we got from the server also when
starting Win16 or DOS programs, to avoid depending on the contents of
the command-line.
2001-01-06 01:55:49 +00:00
François Gouget da2b6a9f26 Fixed some HFILE vs. HANDLE mismatches.
If not used the last parameter of CreateFile must be 0, not -1.
2001-01-06 01:29:18 +00:00
Eric Pouech c4c7324c45 Forced loading of msacm32 when msacm is loaded.
Added msacm DLL pair in config files.
Added some dumb calls from 16 to 32.
2001-01-06 01:23:11 +00:00
Alexandre Julliard 8081e5a1e5 Added handle_t type to server interface so that we can make handles
pointers later on.
Always use 0 to signal invalid handle in server requests.
2001-01-05 04:08:07 +00:00
Ulrich Weigand acefd16bee Prevent unaligned access to NE in-memory module data. 2000-12-29 05:09:15 +00:00
Ulrich Weigand cc195924a6 Added check whether unaligned memory access is allowed.
Added macros to access unaligned WORDs / DWORDs.
2000-12-27 04:18:26 +00:00
Ove Kaaven e5557b357a Separated the MZ loader and core DOS VM into dlls/winedos. 2000-12-26 00:22:45 +00:00
François Gouget 55146dbe18 Fixed a few type clashes in preparation for the switch to STRICT. 2000-12-24 20:33:01 +00:00
Alexandre Julliard e441d3c4e1 No longer try to load builtin library when loadorder is 'so'. 2000-12-22 22:50:12 +00:00
Alexandre Julliard d549f6909e Use a separate FIFO pair for server requests that don't need to pass a
file descriptor.
Associate file descriptors with handles on the server side so that we
don't need to pass the fd every time the client wants to use it.
2000-12-22 02:04:15 +00:00
Alexandre Julliard 5801723b50 Replaced WIN16_GlobalLock16 by "official" function K32WOWGlobalLock16. 2000-12-22 01:09:26 +00:00
Alexandre Julliard 014a8bb1e3 Do not call thread attach/detach routines during process exit to avoid
potential deadlocks.
2000-12-20 18:41:34 +00:00
François Gouget 5e5c52d477 DUMMYSTRUCTNAME2 creates a conflict when using anonymous union names. 2000-12-19 23:31:52 +00:00
Ulrich Weigand 975914003b Fixed IMAGE_RESOURCE_DIRECTORY_ENTRY on big-endian machines. 2000-12-19 03:38:53 +00:00
François Gouget 807b04513a Changed the type of Function to PDWORD as on Windows. 2000-12-15 20:53:39 +00:00
James Abbatiello e675887129 Work around glibc 2.1.x dlopen bug (again). 2000-12-13 21:32:55 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard 751625e089 Got rid of main.h. 2000-12-12 00:50:19 +00:00
Alexandre Julliard a67369ea00 Changed LoadImage16 to take an LPCSTR instead of a SEGPTR. 2000-12-12 00:48:06 +00:00
Alexandre Julliard becb9a353b Moved all Wine internal definitions out of process.h. 2000-12-11 03:48:15 +00:00
Alexandre Julliard 84f91bd3fc Removed no longer used elfdll loader. 2000-12-09 03:25:34 +00:00
Alexandre Julliard 886604c715 Always pass lower-case filenames to wine_dll_load().
Clear dlerror() before and after calls to dlopen/dlsym to work around
a glibc bug (thanks to James Abbatiello for tracking the bug).
2000-12-05 21:17:59 +00:00
Andreas Mohr 8c91b080b7 Better error message for forwards. 2000-12-05 21:11:35 +00:00
Aric Stewart e4d09327ef Added ASCII-only version of toupper, tolower, strcasecmp and the like
for file and module I/O.
2000-12-03 03:14:29 +00:00
Patrik Stridvall 697bf65e3e Added/modified documentation for function arguments. 2000-12-02 23:44:59 +00:00
Patrik Stridvall 2b3aa616e8 Added/modified documentation for function arguments. 2000-12-01 23:58:28 +00:00
Patrik Stridvall b5e5555c7c Fixed Win16 documentation not fixed because of a bug in winapi_check. 2000-12-01 23:54:51 +00:00
Patrik Stridvall 7a4e599780 Fixed some issues found by winapi_check. 2000-12-01 23:53:46 +00:00
Alexandre Julliard ef57e18f99 Removed some unnecessary includes. 2000-12-01 21:32:55 +00:00
Alexandre Julliard 7afce0e6d6 Moved the few remaining functions in wprocs.dll to kernel.dll.
No longer load wprocs.dll unconditionally.
Restored default interrupt handler behavior (reported by Andreas Mohr).
2000-12-01 21:25:31 +00:00
Alexandre Julliard 32fcfc24ae Removed "elfdll" load order option and updated documentation. 2000-11-30 01:15:30 +00:00
Alexandre Julliard e296bf3717 Renamed CallTo16* functions to wine_call_to_16* and export them from
kernel32.spec.
2000-11-29 19:39:30 +00:00
Alexandre Julliard 24a62ab9b0 Got rid of the Wine internal lstrcpy* functions and of winestring.h. 2000-11-28 22:40:56 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00
Alexandre Julliard 256ac22dee Display the name of the function when import failed. 2000-11-27 22:03:46 +00:00
Alexandre Julliard 5ce902b0b9 Implemented DosFileHandleToWin32Handle, Win32HandleToDosFileHandle and
DisposeLZ32Handle and use them to replace file.c internal functions.
Renamed WOW* functions into K32WOW*.
2000-11-27 21:59:08 +00:00
Alexandre Julliard ac7efef3b5 Changed GetProcAddress16 and 16-bit resource functions to take normal
pointers instead of SEGPTRs.
Removed WIN16_GetTempDrive.
2000-11-27 21:54:01 +00:00
Andreas Mohr fc2c5dfb3d Implemented TerminateApp needed for DBase 5.0.
Made FatalAppExit16 honor the SEM_NOGPFAULTERRORBOX error_mode flag.
2000-11-27 01:36:24 +00:00
Hidenori Takeshima 5b21807946 Replaced u_char/u_short/u_long by BYTE/WORD/DWORD for increased portability. 2000-11-26 22:35:53 +00:00
Alexandre Julliard ab687979fd Moved standard syslevel APIs declaration to winbase.h.
Use exported syslevel function wherever possible.
Moved SEGPTR declaration to windef16.h.
2000-11-15 23:41:46 +00:00
Alexandre Julliard 914406f854 Moved LDT handling to libwine.so. Changed the interface to use the
exported LDT_ENTRY structure.
2000-11-14 01:54:49 +00:00
Alexandre Julliard 0a8114c152 Raise an exception for unimplemented 16-bit entry points too.
Added check for duplicate names in 16-bit spec files.
2000-11-12 03:45:55 +00:00
Francois Gouget da0acca7d8 Use DUMMYxxxNAME for anonymous struct/unions. 2000-11-10 22:34:39 +00:00
Alexandre Julliard 3e38431ef5 Don't strip the library extension if it's not ".dll". 2000-11-09 20:28:44 +00:00
Alexandre Julliard 4e951ea25b Check all Callouts function pointers for NULL before using them.
Don't load USER dll if not needed by the application.
2000-11-08 22:47:53 +00:00
Alexandre Julliard e087508f57 Moved builtin dll registration to libwine.
Changed process initialization to not load imported dlls too early.
2000-11-08 04:33:20 +00:00
Andreas Mohr 786c9a68f6 Get ELF_LoadLibraryExA back into a working state. 2000-11-06 05:26:27 +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
Dimitrie O. Paun 334a42f521 Fixed a few compilation warnings 2000-10-29 18:07:04 +00:00
Andreas Mohr cabee39f3c Free the Win16 dummy module and wm->deps. 2000-10-25 21:22:27 +00:00
Alexandre Julliard 0e236a1f37 Removed GetResDirEntryA/W. 2000-10-24 21:35:14 +00:00
Patrik Stridvall a9f6a9daec Explicitly initialize structures. 2000-10-24 02:22:16 +00:00
Uwe Bonnes 38012a5604 Pass the correct hFile to PE_CreateModule. 2000-10-19 22:27:23 +00:00
Alexandre Julliard 81800b1f6d Use a binary search to find entries in resource directories.
Fixed GetResDirEntryA/W prototypes.
2000-10-19 20:29:53 +00:00
Andreas Mohr 49851f88e3 Back out my ELFDLL_dlopen patch and add a warning for future misguided
hackers.
2000-10-19 20:25:02 +00:00
Ove Kaaven 7c4bee569c Implemented DOS INT21 AH=4B (EXEC). 2000-10-17 00:33:02 +00:00
Ove Kaaven d94b631947 Fixed a couple of recent bugs, and added some more safeguards (could
be handy for portability anyway) and trace statements.
2000-10-15 00:41:08 +00:00
Andreas Mohr 1563abe8ec - stupid spelling fixes
- some more loadorder array work
2000-10-13 20:26:52 +00:00
Ove Kaaven dfa4130804 Merged DOSVM_Int with DOSVM_SimulateInt, and made it handle apps that
purposefully shuffle the interrupt vectors around.
2000-10-13 20:14:49 +00:00
Andreas Mohr 6a2a2ebc71 Make sure that we skip tasks with missing hInstance. 2000-10-02 22:16:34 +00:00
Andreas Mohr 6d52787f73 Beautified the loadorder array (group DLLs according to functionality,
add group header comments, ...), added builtin x11drv and winaspi.
2000-10-02 03:33:51 +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 15bfcd0398 Moved $(MODULE).o rule out of Make.rules into the individual
Makefiles.
2000-09-29 00:28:25 +00:00
Dmitry Timoshkov 4ca7e6343f Avoid crashes if 16-bit module handle was passed to the 32-bit
resource enumerator.
2000-09-26 00:39:06 +00:00
Alexandre Julliard 74af67ef42 Removed shell.h. Cleaned up the nested includes mess in wine/obj_*.h. 2000-09-26 00:00:55 +00:00
Alexandre Julliard d8fab2e67c Removed some of the XXX_reg macros now that we are using the standard
CONTEXT86 structure everywhere.
2000-09-25 23:53:07 +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
Alexandre Julliard 770eb51ed5 Moved most global data out of the LPDOSTASK structure.
Allocate DPMI real-mode segments globally at startup.
Try to allocate DOS memory at address 0.
2000-09-24 20:47:50 +00:00
Andreas Mohr 7096384d14 Fixed WinExec16 to handle quoted filenames correctly. 2000-09-22 22:08:28 +00:00
Ulrich Weigand a761e3dad0 Modified CallTo16Register routines to update register context after
call returns. Callers adapted.
2000-09-13 20:29:44 +00:00
Andreas Mohr c4a264428b Fixed NE_LoadExeHeader error handling. 2000-09-10 03:14:36 +00:00
Eric Pouech 208955cada Fixed loader - broken search for already loaded modules. 2000-09-10 03:14:00 +00:00
Patrik Stridvall 6e740b5b46 Fixed some issues found by winapi_check. 2000-09-04 20:21:06 +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
Peter Ganten c7c4246a99 - Always store the full path name of 32bit modules in WINE_MODREF
- Add the possibility to use path names with the --dll command line
  option
- Add the possibility to use the --dll command line option several
  times.
- Note: The colon-sign is now exchanged with the plus-sign, as it is
  part of dos path names.
2000-08-28 21:33:28 +00:00
Alexandre Julliard 7bbba4f9ce Removed calls to ConvertToGlobalHandle and MakeCriticalSectionGlobal. 2000-08-26 21:18:36 +00:00
Andreas Mohr 349655636b - made the MIDI sequencer error message much better for confused users
to be found on #WineHQ
- use strerror instead of errno at important places
- got rid of HAVE_STRERROR macro
- removed some #include:s (hopefully I didn't break anything)
2000-08-26 20:31:48 +00:00
Andreas Mohr 62f3eaa782 Transform every ERR() to WARN() in MakeProcInstance. 2000-08-21 20:16:26 +00:00
Dusan Lacko 9f6d4bc0be Pass the type/name as a C string instead of an
IMAGE_RESOURCE_DIR_STRING_U structure to the callback function.
2000-08-20 03:32:57 +00:00
Niclas Karlsson MATE 1918601e4c WATCOM compiled programs leave VirtualSize to zero which triggers the
virus check. Use SizeOfRawData instead.
2000-08-16 12:54:03 +00:00
Alexandre Julliard a257ba245a Avoid going past the end of the relocation section. Skip sanity checks
for empty relocation blocks.
2000-08-16 12:46:09 +00:00
Alexandre Julliard c19e1a7e19 Implemented SEC_IMAGE mappings and shared PE sections (with the help
of Peter Ganten).
2000-08-14 20:20:01 +00:00
Alexandre Julliard dcd247e55f Moved CharUpper* and CharLower* functions to dlls/user. 2000-08-14 17:39:15 +00:00
Alexandre Julliard c7e7df8b17 Replaced all lstr* calls from inside Wine code by their str* equivalent. 2000-08-14 14:41:19 +00:00
Alexandre Julliard 198746d812 Replaced global Callbacks structure by appropriate glue code
generation. Removed a few unused entries in the Callout structure.
2000-08-14 14:29:22 +00:00
Dmitry Timoshkov 05c88fa664 Make FindResource and FindResourceEx fully windows compatible. 2000-08-11 12:50:56 +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 231674d824 Removed the DOS handles table from the PDB and made it a static
variable.
2000-08-09 22:30:18 +00:00
Alexandre Julliard 32936f0e48 Fixed resource functions to work with 32-bit modules that don't have a
16-bit counterpart (necessary for LOAD_LIBRARY_AS_DATAFILE support).
2000-08-07 23:50:00 +00:00
Peter Ganten b9f350b517 Set up exe_modref before loading implicitly linked dlls. 2000-08-07 17:10:20 +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 cb10fdab99 Replaced lstrlen/lstrcmp by libc equivalents everywhere we don't need
to trap exceptions.
2000-08-06 02:41:16 +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
Peter Ganten 44d0d1907e WinExec16 should not split quoted filenames with spaces. 2000-08-01 20:55:22 +00:00
Ove Kaaven e3d70795ff Fixed another non-Linux build failure. 2000-08-01 20:52:20 +00:00
Alexandre Julliard 15aef00f29 Skip quoted program name when building command line. 2000-07-31 21:02:53 +00:00
Alexandre Julliard fd8a6de90a Backed out FindResource language patch. 2000-07-31 20:59:59 +00:00
Ove Kaaven 6200a48b70 Fixed a few problems. 2000-07-31 20:58:31 +00:00
Ove Kaaven 7248d47fd2 Convert DOS (MZ) binary loader to the new DOS process model. 2000-07-31 20:56:28 +00:00
Alexandre Julliard 946a4448af Cleaned up a few USER dependencies. 2000-07-30 13:50:27 +00:00
Ove Kaaven e3b353e220 Removed hModule parameter from MZ_AllocDPMITask(), and renamed
MZ_KillModule() to MZ_KillTask().
2000-07-30 13:41:13 +00:00
Ove Kaaven 3bbd167a46 Removed usage of obsolete pModule->lpDosTask. 2000-07-30 13:27:08 +00:00
Alexandre Julliard 58d5a0a786 Removed some unnecessary inclusions of wingdi.h and winuser.h 2000-07-29 21:58:17 +00:00
Alexandre Julliard 0aa6cc298e Removed a few external dependencies from ntdll. 2000-07-29 21:56:59 +00:00
Ove Kaaven d5cab2a058 Added support for the Win32 Console interface to the main DOSVM event
loop. Cleaned up event dispatching code a bit.
2000-07-29 14:34:45 +00:00
Ove Kaaven a9c19f0710 Let Int09 routines remember a keystroke's ASCII code, if available. 2000-07-29 11:30:28 +00:00
Dmitry Timoshkov f1fd89db42 FindResourceExA/W should search for the specified language resource only.
FindResourceA/W should search for any language resource.
2000-07-29 00:01:57 +00:00
Ove Kaaven 7b49914afc Removed the hModule parameter from various DOSMEM routines, the DOSMEM
routines now always use the current memory space.
2000-07-28 22:23:59 +00:00
Alexandre Julliard 99e1e8106c Return the proper error code when a 16-bit task failed to start
(thanks to Peter Ganten).
2000-07-26 18:03:43 +00:00
Andreas Mohr b021fe2911 Added detection code for very old Windows (1.1, 2.0, ...) binaries to
MODULE_GetBinaryType().
2000-07-26 18:02:28 +00:00
Dave Pickles a64603d3d6 Improved FormatMessage:
- Added full support for FORMAT_MESSAGE_FROM_SYSTEM
- Implemented language search as documented
- Illegal combinations of options trapped.
- Message table for system messages added.
2000-07-25 17:53:58 +00:00
Alexandre Julliard b18dbd26c5 Perform NE_InitProcess in the context of the new task. 2000-07-25 12:11:53 +00:00
Ove Kaaven 9b2060afab Change the V86BASE macro to call DOSMEM_MemoryBase() instead of using
the ugly Dr7 hack.
2000-07-23 13:36:41 +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
Andreas Mohr 2caee712a2 Spelling fixes. 2000-07-16 15:44:22 +00:00
Andreas Mohr 6f83a5ee8f Doc and trace updates. 2000-07-16 15:43:07 +00:00
Marcus Meissner dad709122a Transmit current directory settings to newly created processes. 2000-07-16 15:42:22 +00:00
Huw D M Davies 10b1b23d40 Create rpcrt4.dll.
Implement UuidCreate (using existing code from CoCreateGuid).
CoCreateGuid calls UuidCreate.
2000-07-15 19:53:50 +00:00
Peter Ganten ddd1a73675 Fixed a file descriptor leak in the PE loader. 2000-07-15 19:44:29 +00:00
Andreas Mohr f8b0725399 Added ws2_32 loadorder. 2000-07-15 15:13:28 +00:00
Gerard Patel bd55eb8703 Add a warning when the normal load address for a win32 program is not
available.
2000-07-15 15:11:31 +00:00
Andreas Mohr e0a08423a0 Added loadorder entry for the Linux glide3x library. 2000-07-15 14:58:08 +00:00
Andreas Mohr 96293d4c29 Rename MODULE_InitDll to MODULE_InitDLL for the sake of consistency. 2000-07-08 18:28:03 +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
Dave Hawkes fd54c98abd GlobalFree16 returns NULL on success, but DestroyAcceleratorTable
should return TRUE on success.
2000-06-23 16:51:19 +00:00
Dmitry Timoshkov 5890c09983 Use GetSystemDefaultLangID() instead of WINE_LanguageId. 2000-06-18 19:31:19 +00:00
Ove Kaaven fefb104327 Make the base relocation message a WARN, not a FIXME. 2000-06-18 17:21:12 +00:00
Dmitry Timoshkov 3332bd068e Optimized implementation of LoadStringA. 2000-06-15 00:11:06 +00:00
Juergen Schmied 13d74c5f0a - new dll shfolder.dll
- small fixes
2000-06-13 03:45:52 +00:00
Alexandre Julliard 5ea22474bb Use the Unicode string functions from wine/unicode.h instead of the
crtdll ones.
2000-06-13 01:10:29 +00:00
Alexandre Julliard 13c965cc9f Make sure GetModuleFileName16 does not return garbage even if the path
is not valid (thanks to Andreas Mohr).
2000-06-10 04:45:52 +00:00
Alexandre Julliard 8fe0551aa3 Removed a few unnecessary includes. 2000-06-08 04:57:58 +00:00
Alexandre Julliard e3332128b0 Use FILE_SHARE_READ to open the file in GetBinaryTypeA. 2000-06-08 01:00:16 +00:00
Alexandre Julliard ec77b8387f Send full path name and debug information in load_dll event. 2000-06-08 00:58:50 +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 2d8cf500c3 Merged display.dll into USER. 2000-06-03 04:20:19 +00:00
Juergen Schmied 6d01aeb20f Give a error message if a forwarded export is not resolved. 2000-06-01 23:23:00 +00:00
Dimitrie O. Paun 84bde6a4a4 Separate wineps out of Wine's core. 2000-05-30 20:27:23 +00:00
Alexandre Julliard 0211d70a15 Make sure initial task is not marked as 32-bit. 2000-05-30 19:46:11 +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
Ulrich Weigand f2f0927eb3 Fixed initialization of INSTANCEDATA in InitTask(). 2000-05-19 03:40:22 +00:00
Lionel Ulmer bedf40b58b Added support for OpenGL. 2000-05-12 20:18:14 +00:00
Bernd Herd 4d05761958 Make sure hInstance is a proper global handle and not a selector
value.
2000-05-11 00:10:36 +00:00
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