Commit Graph

332 Commits

Author SHA1 Message Date
Bertho Stultiens af5745f504 Attach notifications must be send after all recursive dependencies are
loaded and not before.
1999-04-19 16:32:31 +00:00
Patrik Stridvall b4b9fae671 New debug scheme with explicit debug channels declaration. 1999-04-19 14:56:29 +00:00
Alexandre Julliard 3c9cf42d00 Removed extra call to TASK_StartTask. 1999-04-18 14:44:26 +00:00
Eric Pouech 85aac70064 Fixed memory freeing. 1999-04-18 13:31:34 +00:00
Alexandre Julliard db000ee3e8 Fixed toolhelp routines usage in GetModuleFromPath (reported by Bertho
Stultiens).
1999-04-18 13:18:42 +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
Bertho Stultiens cebb2f1157 New files to support load order and partial stubs for elfdlls. 1999-04-18 12:09:21 +00:00
Kevin Holbrook a8f8bef098 Fix ambiguous else warning. 1999-04-18 09:33:20 +00:00
Marcus Meissner d8a8b00ae0 Disable AC bit on receiving alignment exceptions. 1999-04-18 09:22:12 +00:00
Andreas Mohr dca5e56b90 - Implemented proper ("real", compressed) Win16 entry tables.
- Fixed MyAlloc (AKA NE_AllocateSegment).
- Implemented PatchCodeHandle16.
1999-04-16 08:17:17 +00:00
Marcus Meissner f31ec0b08a FreeBSD 3 multithreading final fix. Do not use libc_r, libc is just as
reentrant concerning errno. Revert unneeded FreeBSD hack to
loader/signal.c from last patch.
1999-04-15 16:38:38 +00:00
Ulrich Weigand d1e2239ff0 Bugfix: Always release the Win16Lock in TASK_Reschedule. 1999-04-15 15:30:33 +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 7761cbe0b6 Implemented 'kernel services thread'. 1999-04-11 15:01:20 +00:00
Bertho Stultiens 1b34697ad3 FreeLibrary partial implementation. 1999-04-11 14:52:24 +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
Bertho Stultiens c6ba86377e GetModuleFromPath now checks for loaded modules via filenames which
were specified without a path.
1999-04-10 16:47:47 +00:00
Marcus Meissner 574ef76b9f Added some SetLastError()s in GetProcAddress() and LoadLibrary(). 1999-04-03 16:23:47 +00:00
Ove Kaaven 240bdacb8d Made DOSVM_GetTimer survive EAGAIN errors... 1999-04-01 11:53:52 +00:00
Ulrich Weigand e392a0c975 Added USER32.UserSignalProc to Callout table.
Implemented built-in UserSignalProc().
Don't announce Win3.1-style USER handler any more.
1999-04-01 11:44:52 +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
Marcus Meissner 9c6735e6a2 "foo" was not translated to "foo.so" in elf loader. 1999-04-01 10:09:46 +00:00
Ulrich Weigand 6903156eb5 Allow NULL NE resource handler; call the default handler directly.
Removed WPROCS / Callbacks support for WineLib resource handlers.
1999-04-01 10:08:21 +00:00
Jess Haas 1ff60f3451 Fixed CreateProcessA so it can handle commandlines with arguments and
no .exe.
1999-03-28 15:00:44 +00:00
Jess Haas 0f6efae8bf Fixed GetModuleHandle16. 1999-03-28 14:57:37 +00:00
Marcus Meissner d208d8264a Empty DOSVM_QueueEvent for !MZ_SUPPORTED. 1999-03-28 12:34:25 +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
Ulrich Weigand da5779e5bd Allow UserYield16 to be called from 32-bit thread. 1999-03-27 16:10:52 +00:00
Stephane Lussier 35ffc5d8c0 Made the timer code thread safe. 1999-03-25 13:23:26 +00:00
Ove Kaaven 5394258a90 Added infrastructure and definitions for general-purpose event and IRQ
handling for the Wine dos box. Removed the obsolete MZ_Tick. Added
event message loop, message handling, CLI/STI handling, and minimal
PIC support.
1999-03-25 10:53:08 +00:00
Ove Kaaven 9ea09ca866 Added handling of SIGUSR2 for the new event interruption handling,
bumping up the protocol revision. Made some debug messages not be
output when it's not necessary.
1999-03-25 10:52:03 +00:00
Ulrich Weigand 0092390cd6 Bugfix: cope with quoted arguments for CreateProcess(). 1999-03-22 17:47:36 +00:00
Ulrich Weigand 919a8109aa Fixed typo in SizeofResource(). 1999-03-22 17:47:13 +00:00
Andreas Mohr ad2ffe5022 Cosmetics. 1999-03-22 14:52:46 +00:00
Sergey Turchanov 5ffd2df797 Implementation for FreeLibraryAndExitThread.
Made GetBinaryType = GetBinaryTypeA.
1999-03-22 12:35:48 +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
Andreas Mohr 3292030ada Fixed typo. 1999-03-21 08:51:51 +00:00
Marcus Meissner 6b9dd2e098 Lots of warning fixed, one missing WINAPI in ddraw.c added. 1999-03-18 17:39:57 +00:00
Ulrich Weigand 892627b12b Pass CreateProcess() SECURITY_ATTRIBUTES through to PROCESS_Create(). 1999-03-16 16:29:26 +00:00
Ulrich Weigand b211ec4c95 Fix compiler warnings. 1999-03-16 10:39:16 +00:00
Marcus Meissner 7f95bb7f75 Use MESSAGE_RESOURCE_* defines from SDK headers, updated LoadMessage*
code.
1999-03-15 15:13:14 +00:00
Jim Aston 2e1cafa288 Renamed wintypes.h to windef.h. 1999-03-14 16:35:05 +00:00
Theodore S. Hetke 5d1d777e69 Added tracing for delayed imports and removed the fixme. 1999-03-14 15:18:08 +00:00
Uwe Bonnes f59d2f6155 Make GetModuleHandle16 only look for module names, not path names. 1999-03-14 13:44:04 +00:00
Peter Ganten 4e5b11680f Fix CreateProcess to handle lpCommandline better. 1999-03-13 17:05:39 +00:00
Marcus Meissner 1a27fe6b1a Mask out the upper 12 bits from the resourceid, just like win95 does. 1999-03-13 12:49:31 +00:00
Ulrich Weigand 1442253dfa Deleted NE_FreePEResource(). 1999-03-10 14:04:39 +00:00
Ulrich Weigand 1b938b1817 Adapted to cursor/icon handling changes. 1999-03-10 14:03:06 +00:00
Ulrich Weigand 0511282627 Allow accessing both NE and PE resources with both 16- and 32-bit API.
Hook cursor/icon destruction into FreeResource (like Win95).
1999-03-10 14:02:06 +00:00
Ulrich Weigand aa23b0bd63 Bugfix: Allow lpCommandLine == NULL in CreateProcess(). 1999-03-10 13:28:54 +00:00
Juergen Schmied 3de25095ed Fix use of wrong prototype from ntdll.h. 1999-03-09 17:44:58 +00:00
Marcus Meissner de43ef45ec Fixed a lot of warnings using WINE_UNUSED, casts, commenting out and
additional {}. Rewrote GetCreationModeFromSTGM so we don't get
"possible use of uninitialized variable".
1999-02-28 19:56:59 +00:00
Andreas Mohr e518f4743c Added support for quoted file names in CreateProcess(). 1999-02-28 19:28:44 +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 f6a9361942 Adapted to CreateProcess changes. 1999-02-28 11:19:10 +00:00
Ulrich Weigand fe14b6603d NE modules adapted to CreateProcess changes.
LoadModule16/LoadLibrary16 reorganization.
1999-02-28 11:17: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 a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Pavel Roskin 85f5304fa5 Made message "Resource not found" WARN. 1999-02-25 16:37:46 +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
Marcus Meissner 219cfd8387 Optimized away more includes, readded some #includes for necessary
prototypes.
1999-02-24 13:05:13 +00:00
Michael Veksler 3fbb8dc829 - Fix headers to include less or smaller header files.
- Fix header and source files to include missing header files to avoid
  warnings and errors.
1999-02-21 18:23:26 +00:00
Marcus Meissner 4ede296356 Change "g" (general regs) into "r" (hardregs) in clone / modify_ldt /
wine_sigaction __PIC__ cases, since "g" will not work with
-fomit-frame-pointer ("g" is referenced using %esp which was
invalidated before). Bug found and (other) fix suggested by
<daniel@mat.utfsm.cl> Daniel Serpell.
1999-02-21 18:18:42 +00:00
Stephane Lussier b50272bd75 Fix problem where you need mouse activity to unlock some 16 bits
thread with multi-threaded apps.
1999-02-21 18:15:26 +00:00
Uwe Bonnes 688221460b Only append .dll if no extension yet. 1999-02-19 15:35:23 +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
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
Joseph Pranevich ebc0e5e0a4 Moved initialization until later. Also moved around code a bit to be
consistant.
1999-02-14 11:15:47 +00:00
Marcus Meissner 9faa7d735a Moved the if1632/signal.c stuff into loader/signal.c, adapted function
pointers for wine_debug and INSTR_EmulateInstruction.
1999-02-13 17:55:17 +00:00
Alexandre Julliard 4b461128d6 Added input queue to server-side console object,
read/write_console_input requests, and use them for
Read/WriteConsoleInput.
1999-01-31 19:04:30 +00:00
Ulrich Weigand 6d76a209db Modify NE_FindTypeSection and NE_FindResourceFromType so as to be
usable by the VERSION code.
1999-01-31 10:13:44 +00:00
Ulrich Weigand 9a61495c8f Added GetResDirEntryA for use by the VERSION code. 1999-01-31 10:13:13 +00:00
Marcus Meissner 03479f8adb Fixed a lot of warnings for possible problems. 1999-01-28 10:06:38 +00:00
Ove Kaaven e257cb5af2 Moved DOS handle allocation slightly, to fix potential memory
leaks and lost handles. Also removed some useless init code.
1999-01-24 19:00:46 +00:00
Andreas Mohr a7894d9311 Implemented Int 0x15/0xc0: BIOS - GET CONFIG and some other BIOS
data.
1999-01-24 09:32:10 +00:00
Andreas Mohr 94e4485bff Implemented WIN16_CallMsgFilter32, WIN16_DispatchMessage32,
DrawAnimatedRects16 (stub), FormatMessage16, WIN16_GetMessage32,
WIN16_PeekMessage32 and WIN16_TranslateMessage32.
1999-01-23 14:15:17 +00:00
Marcus Meissner b12e72d685 DOS programs use handles 0-4 without opening/closing any of those
handles first. Split up Init from AllocDosHandle and call it from
the DOSVM.
1999-01-23 14:01:08 +00:00
Marcus Meissner 688c565880 Fixed accelerator handling. ACCEL16 used internal, ACCEL32 for Win32
API, PE_ACCEL for PE Accelerators. See documentation/accelerators.
1999-01-22 17:09:46 +00:00
Ulrich Weigand 901ca36b19 Allow passing task handles to GetThreadQueue() and SetFastQueue(). 1999-01-20 13:35:34 +00:00
Ulrich Weigand c4137d510a Check module name length in ModuleNext(). 1999-01-20 13:08: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
Joseph Pranevich 3aa839f558 Set console video mode when loading DOS app. (Eventually, I want to
mimic Windows 9x's behavior by setting the video mode only when non
INT 21 calls are used to allow for arbitrary-sized consoles).
1999-01-03 16:16:14 +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
Michael Veksler ca1bc866cf Moves more stuff from windows.h.
- include/winuser.h - interface relevant to user32.spec
- include/wine/winuser16.h - the old 16 bit interface (internal use)
- include/winbase.h - some minor updates to keep things coherent.
- Lot of other files made to include wine/winuser16.h, which is no
  longer included from windows.h
1999-01-01 18:57:33 +00:00
Alexandre Julliard 1392658679 Use Win32 file handles instead of Unix ones. 1999-01-01 16:55:02 +00:00
Alexandre Julliard f8e741bcbe Take into account handle inheritance flag. 1999-01-01 16:53:11 +00:00
Alexandre Julliard 55443878fc Removed client-side wait functions; all waiting is now done through
the server.
1998-12-31 15:52:06 +00:00
Alexandre Julliard 338e757d08 Added beginnings of server-side file handling.
Added -debugmsg +server support.
Better server request dumping for varargs requests.
1998-12-27 15:28:54 +00:00
Joseph Pranevich 06591f671f Add support for selection of console mode drivers to use using the
-console option. Currently "tty", "ncurses", and "xterm" are
supported.
Add stubs for resizing the screen on mode changes.
1998-12-25 08:48:56 +00:00
Ove Kaaven b8e7a833c7 Added some new dosmod communication possibilities, including
activating a dosmod-specific setitimer(), and the capture of some
common signals, which is returned to Wine (previously a SIGILL
would just cause a "dosmod sync lost" without explanation, now it
invokes the Wine debugger). Invokes int 08 upon receipt of dosmod
SIGALRM, thus simulating the DOS timer. Made DOS interrupt calls
be reported by -debugmsg +relay instead of -debugmsg +int. And
fixed non-i386 compilation of dosmod. (Anything else?!)
1998-12-24 16:23:01 +00:00
Ulrich Weigand a844189d1a Desktop window queue handling adapted. 1998-12-24 15:17:02 +00:00
Ulrich Weigand ff35e1fb13 Use Callout table instead of direct GetProcAddress.
UserYield moved to USER.
1998-12-24 15:13:54 +00:00
Ulrich Weigand be672fe587 Handle non-hardware X events correctly with native USER
(removed reference to MESSAGEQUEUE from KERNEL code).
Handle Expose events with native USER.
1998-12-24 14:59:53 +00:00
Ulrich Weigand ffa2c6f9ba Reorganized PE module loading to prepare for elf-dll loader.
WINE_MODREF creation moved to one central location.
Bugfix: correctly select native/built-in version if .DLL
extension is missing in LoadLibrary call.
1998-12-18 15:38:15 +00:00
Marcus Meissner ad7538bfc5 Made async IO (SIGIO) stuff from WINSOCK generic useable.
Added async IO support to FILE and CONSOLE objects.
1998-12-14 18:15:10 +00:00
Ove Kaaven 35693719af Moved DPMI wrapper allocation code to dosmem.c to REALLY make the
RMcall shortcuts independent of dosmod. SS had been left out of
the REALMODECALL copy routines for some reason, fixed now. Also
cleaned up a few compiler warnings.
1998-12-14 17:26:04 +00:00