Release 970215
Sat Feb 15 11:59:17 1997 Alexandre Julliard <julliard@lrc.epfl.ch>
* [*/*]
Converted a lot of functions to Win32 types.
Removed HWND type.
Fri Feb 14 15:09:19 1997 Onno Hovers <onno@stack.nl>
* [memory/global.c]
Implemented GMEM_MOVEABLE blocks for Win32.
Fri Feb 14 00:24:39 1997 Alex Korobka <alex@trantor.pharm.sunysb.edu>
* [loader/task.c] [windows/queue.c]
Do not read X events while in the intertask SendMessage().
* [misc/lstr.c]
Fixed CharPrev32A().
* [windows/hook.c] [include/hook.h]
Restored broken WH_CALLWNDPROC functionality for dialogs, etc...
* [windows/win.c] [windows/defwnd.c] [windows/mdi.c]
[windows/event.c] [controls/edit.c]
Added WIN_ISWIN32 flag to windows created by Win32 calls.
Several new Win32 messages are sent when this flag is on.
* [msdos/dosmem.c] [memory/global.c]
Some changes in DOS memory allocation.
Fri Feb 7 21:46:03 1997 Andrew Taylor <andrew@riscan.com>
* [win32/security.c]
Added SID manipulation functions.
* [include/debug.h]
Added debugging class "security".
Fri Feb 7 20:46:33 1997 Robert Pouliot <krynos@clic.net>
* [debugger/msc.c] [debugger/source.c]
[documentation/wine_os2.txt] [loader/signal.c]
Some more changes for OS/2. Doesn't work yet.
Fri Feb 7 09:31:17 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de>
* [scheduler/process.c]
Added ExpandEnvironmentStrings*.
* [misc/ntdll.c] [include/ntdll.h]
Added some new functions.
* [objects/cursoricon.c]
CURSORICON_LoadHandler: check against some bizarre out of memory
conditions.
* [windows/mdi.c]
Fixed DefFrameProc32*, added TranslateMDISysAccel32.
Wed Feb 5 01:31:05 1997 John Zero <john@globe.graphisoft.hu>
* [resources/sysres_Hu.rc] [misc/ole2nls.c] [misc/main.c]
[programs/progman/Hu.rc] [programs/winhelp/Hu.rc]
Added Hungarian language support.
diff --git a/windows/queue.c b/windows/queue.c
index 709fa02..dc99aed 100644
--- a/windows/queue.c
+++ b/windows/queue.c
@@ -306,17 +306,20 @@
!(senderQ = (MESSAGEQUEUE*)GlobalLock16( queue->hSendingTask)))
{ dprintf_msg(stddeb,"\trcm: nothing to do\n"); return; }
- queue->InSendMessageHandle = queue->hSendingTask;
- if( !(queue->hSendingTask = senderQ->hPrevSendingTask) )
+ if( !senderQ->hPrevSendingTask )
{
queue->wakeBits &= ~QS_SENDMESSAGE; /* no more sent messages */
queue->changeBits &= ~QS_SENDMESSAGE;
}
- /* Remove sending queue from the list */
+ /* Save current state on stack */
prevSender = queue->InSendMessageHandle;
prevCtrlPtr = queue->smResultCurrent;
+
+ /* Remove sending queue from the list */
+ queue->InSendMessageHandle = queue->hSendingTask;
queue->smResultCurrent = senderQ->smResultInit;
+ queue->hSendingTask = senderQ->hPrevSendingTask;
dprintf_msg(stddeb, "\trcm: smResultCurrent = %08x, prevCtrl = %08x\n",
(unsigned)queue->smResultCurrent, (unsigned)prevCtrlPtr );
@@ -488,8 +491,8 @@
static void QUEUE_WakeSomeone( UINT message )
{
WND* wndPtr = NULL;
- HWND hwnd;
WORD wakeBit;
+ HWND32 hwnd;
MESSAGEQUEUE *queue = pCursorQueue;
if( (message >= WM_KEYFIRST) && (message <= WM_KEYLAST) )
@@ -561,7 +564,7 @@
if ((pos == sysMsgQueue->nextMessage) && sysMsgQueue->msgCount)
{
/* Queue is full, beep (but not on every mouse motion...) */
- if (message != WM_MOUSEMOVE) MessageBeep(0);
+ if (message != WM_MOUSEMOVE) MessageBeep32(0);
return;
}
@@ -647,9 +650,18 @@
/***********************************************************************
- * PostQuitMessage (USER.6)
+ * PostQuitMessage16 (USER.6)
*/
-void PostQuitMessage( INT exitCode )
+void PostQuitMessage16( INT16 exitCode )
+{
+ PostQuitMessage32( exitCode );
+}
+
+
+/***********************************************************************
+ * PostQuitMessage32 (USER32.420)
+ */
+void PostQuitMessage32( INT32 exitCode )
{
MESSAGEQUEUE *queue;
@@ -673,8 +685,8 @@
/***********************************************************************
* GetWindowThreadProcessId (USER32.312)
*/
-DWORD
-GetWindowThreadProcessId(HWND32 hwnd,LPDWORD process) {
+DWORD GetWindowThreadProcessId( HWND32 hwnd, LPDWORD process )
+{
HTASK16 htask;
TDB *tdb;
@@ -695,9 +707,18 @@
/***********************************************************************
- * SetMessageQueue (USER.266)
+ * SetMessageQueue16 (USER.266)
*/
-BOOL SetMessageQueue( int size )
+BOOL16 SetMessageQueue16( INT16 size )
+{
+ return SetMessageQueue32( size );
+}
+
+
+/***********************************************************************
+ * SetMessageQueue32 (USER32.493)
+ */
+BOOL32 SetMessageQueue32( INT32 size )
{
HQUEUE16 hQueue, hNewQueue;
MESSAGEQUEUE *queuePtr;
@@ -757,19 +778,29 @@
/***********************************************************************
- * GetInputState (USER.335)
+ * GetInputState16 (USER.335)
*/
-BOOL GetInputState()
+BOOL16 GetInputState16(void)
+{
+ return GetInputState32();
+}
+
+
+/***********************************************************************
+ * GetInputState32 (USER32.243)
+ */
+BOOL32 GetInputState32(void)
{
MESSAGEQUEUE *queue;
- if (!(queue = (MESSAGEQUEUE *)GlobalLock16( GetTaskQueue(0) ))) return FALSE;
+ if (!(queue = (MESSAGEQUEUE *)GlobalLock16( GetTaskQueue(0) )))
+ return FALSE;
return queue->wakeBits & (QS_KEY | QS_MOUSEBUTTON);
}
/***********************************************************************
- * GetMessagePos (USER.119)
+ * GetMessagePos (USER.119) (USER32.271)
*/
DWORD GetMessagePos(void)
{
@@ -781,7 +812,7 @@
/***********************************************************************
- * GetMessageTime (USER.120)
+ * GetMessageTime (USER.120) (USER32.272)
*/
LONG GetMessageTime(void)
{
@@ -793,7 +824,7 @@
/***********************************************************************
- * GetMessageExtraInfo (USER.288)
+ * GetMessageExtraInfo (USER.288) (USER32.270)
*/
LONG GetMessageExtraInfo(void)
{