Release 961013
Sun Oct 13 15:32:32 1996 Alexandre Julliard <julliard@lrc.epfl.ch>
* [Make.rules.in] [*/Makefile.in]
Made it possible to compile from a directory other than the source
directory.
* [graphics/metafiledrv/init.c] [include/metafiledrv.h]
[objects/metafile.c] [objects/dc.c]
New graphics driver for metafiles.
* [if1632/thunk.c]
Added thunks for SetWindowsHook and SetDCHook.
* [windows/dialog.c]
Fixed GetNextDlgGroupItem and GetNextDlgTabItem to skip disabled
items.
* [*/*]
Removed non Win32-clean types HANDLE, HBITMAP, HBRUSH, HFONT,
HINSTANCE, HMENU, HRGN and HTASK.
Wed Oct 9 14:59:45 1996 Frans van Dorsselaer <dorssel@rulhm1.LeidenUniv.nl>
* [controls/edit.c]
Fixed EditWndProc() to fall back to DefWndProc() when the
edit state structure is not available.
Wed Oct 2 14:00:34 1996 Huw D. M. Davies <h.davies1@physics.oxford.ac.uk>
* [windows/nonclient.c] [windows/mdi.c]
AdjustWindowRectEx16() should only take notice of the styles
WS_DLGFRAME, WS_BORDER, WS_THICKFRAME and
WS_EX_DLGMODALFRAME. Thanks to Alex Korobka.
* [controls/scroll.c]
Fixed typo in ShowScrollBar32().
Sun Aug 25 20:18:56 1996 Jukka Iivonen <iivonen@cc.helsinki.fi>
* [if1632/user32.spec] [if1632/winmm.spec]
Added SetParent and sndPlaySoundA.
diff --git a/loader/task.c b/loader/task.c
index 0983041..87b1e37 100644
--- a/loader/task.c
+++ b/loader/task.c
@@ -54,8 +54,8 @@
static HTASK16 hCurrentTask = 0;
static HTASK16 hTaskToKill = 0;
static HTASK16 hLockedTask = 0;
-static WORD nTaskCount = 0;
-static HANDLE hDOSEnvironment = 0;
+static UINT16 nTaskCount = 0;
+static HGLOBAL16 hDOSEnvironment = 0;
/* TASK_Reschedule() 16-bit entry point */
static FARPROC16 TASK_RescheduleProc;
@@ -66,7 +66,7 @@
#define TASK_SCHEDULE() CallTo16_word_(TASK_RescheduleProc)
#endif
-static HANDLE TASK_CreateDOSEnvironment(void);
+static HGLOBAL16 TASK_CreateDOSEnvironment(void);
/***********************************************************************
* TASK_Init
@@ -83,7 +83,7 @@
/***********************************************************************
* TASK_GetNextTask
*/
-HTASK TASK_GetNextTask( HTASK hTask )
+HTASK16 TASK_GetNextTask( HTASK16 hTask )
{
TDB* pTask = (TDB*)GlobalLock16(hTask);
@@ -97,12 +97,12 @@
*
* Create the original DOS environment.
*/
-static HANDLE TASK_CreateDOSEnvironment(void)
+static HGLOBAL16 TASK_CreateDOSEnvironment(void)
{
static const char program_name[] = "KRNL386.EXE";
char **e, *p;
int initial_size, size, i, winpathlen, sysdirlen;
- HANDLE handle;
+ HGLOBAL16 handle;
extern char **environ;
@@ -279,7 +279,7 @@
* Allocate a thunk for MakeProcInstance().
*/
#ifndef WINELIB32
-static SEGPTR TASK_AllocThunk( HTASK hTask )
+static SEGPTR TASK_AllocThunk( HTASK16 hTask )
{
TDB *pTask;
THUNKS *pThunk;
@@ -316,7 +316,7 @@
* Free a MakeProcInstance() thunk.
*/
#ifndef WINELIB32
-static BOOL TASK_FreeThunk( HTASK hTask, SEGPTR thunk )
+static BOOL TASK_FreeThunk( HTASK16 hTask, SEGPTR thunk )
{
TDB *pTask;
THUNKS *pThunk;
@@ -396,9 +396,9 @@
HINSTANCE16 hPrevInstance, HANDLE16 hEnvironment,
LPCSTR cmdLine, UINT16 cmdShow )
{
- HTASK hTask;
+ HTASK16 hTask;
TDB *pTask;
- HANDLE hParentEnv;
+ HGLOBAL16 hParentEnv;
NE_MODULE *pModule;
SEGTABLEENTRY *pSegTable;
LPSTR name;
@@ -598,10 +598,10 @@
/***********************************************************************
* TASK_DeleteTask
*/
-static void TASK_DeleteTask( HTASK hTask )
+static void TASK_DeleteTask( HTASK16 hTask )
{
TDB *pTask;
- HANDLE hPDB;
+ HGLOBAL16 hPDB;
if (!(pTask = (TDB *)GlobalLock16( hTask ))) return;
hPDB = pTask->hPDB;
@@ -711,7 +711,7 @@
void TASK_Reschedule(void)
{
TDB *pOldTask = NULL, *pNewTask;
- HTASK hTask = 0;
+ HTASK16 hTask = 0;
#ifdef CONFIG_IPC
dde_reschedule();
@@ -862,7 +862,7 @@
/***********************************************************************
* WaitEvent (KERNEL.30)
*/
-BOOL WaitEvent( HTASK hTask )
+BOOL16 WaitEvent( HTASK16 hTask )
{
TDB *pTask;
@@ -885,7 +885,7 @@
/***********************************************************************
* PostEvent (KERNEL.31)
*/
-void PostEvent( HTASK hTask )
+void PostEvent( HTASK16 hTask )
{
TDB *pTask;
@@ -898,10 +898,10 @@
/***********************************************************************
* SetPriority (KERNEL.32)
*/
-void SetPriority( HTASK hTask, int delta )
+void SetPriority( HTASK16 hTask, INT16 delta )
{
TDB *pTask;
- int newpriority;
+ INT16 newpriority;
if (!hTask) hTask = hCurrentTask;
if (!(pTask = (TDB *)GlobalLock16( hTask ))) return;
@@ -919,7 +919,7 @@
/***********************************************************************
* LockCurrentTask (KERNEL.33)
*/
-HTASK LockCurrentTask( BOOL bLock )
+HTASK16 LockCurrentTask( BOOL16 bLock )
{
if (bLock) hLockedTask = hCurrentTask;
else hLockedTask = 0;
@@ -930,7 +930,7 @@
/***********************************************************************
* IsTaskLocked (KERNEL.122)
*/
-HTASK IsTaskLocked(void)
+HTASK16 IsTaskLocked(void)
{
return hLockedTask;
}
@@ -953,7 +953,7 @@
/***********************************************************************
* DirectedYield (KERNEL.150)
*/
-void DirectedYield( HTASK hTask )
+void DirectedYield( HTASK16 hTask )
{
TDB *pCurTask = (TDB *)GlobalLock16( hCurrentTask );
pCurTask->hYieldTo = hTask;
@@ -1035,10 +1035,10 @@
/**********************************************************************
* GetCodeHandle (KERNEL.93)
*/
-HANDLE GetCodeHandle( FARPROC16 proc )
+HANDLE16 GetCodeHandle( FARPROC16 proc )
{
#ifndef WINELIB32
- HANDLE handle;
+ HANDLE16 handle;
BYTE *thunk = (BYTE *)PTR_SEG_TO_LIN( proc );
/* Return the code segment containing 'proc'. */
@@ -1052,7 +1052,7 @@
return handle;
#else
- return (HANDLE)proc;
+ return (HANDLE16)proc;
#endif
}
@@ -1224,7 +1224,7 @@
/***********************************************************************
* GetInstanceData (KERNEL.54)
*/
-int GetInstanceData( HANDLE instance, WORD buffer, int len )
+INT16 GetInstanceData( HINSTANCE16 instance, WORD buffer, INT16 len )
{
char *ptr = (char *)GlobalLock16( instance );
if (!ptr || !len) return 0;
@@ -1276,7 +1276,7 @@
/***********************************************************************
* GetNumTasks (KERNEL.152)
*/
-WORD GetNumTasks(void)
+UINT16 GetNumTasks(void)
{
return nTaskCount;
}
@@ -1300,7 +1300,7 @@
/***********************************************************************
* IsTask (KERNEL.320)
*/
-BOOL IsTask( HTASK hTask )
+BOOL16 IsTask( HTASK16 hTask )
{
TDB *pTask;
@@ -1352,6 +1352,18 @@
/***********************************************************************
+ * GlobalNotify (KERNEL.154)
+ */
+VOID GlobalNotify( FARPROC16 proc )
+{
+ TDB *pTask;
+
+ if (!(pTask = (TDB *)GlobalLock16( hCurrentTask ))) return;
+ pTask->discardhandler = proc;
+}
+
+
+/***********************************************************************
* GetExePtr (KERNEL.133)
*/
HMODULE16 GetExePtr( HANDLE16 handle )