Fixed some SendMessage bugs.
diff --git a/windows/message.c b/windows/message.c
index 2910079..b703e04 100644
--- a/windows/message.c
+++ b/windows/message.c
@@ -676,16 +676,17 @@
if (! (smsg->flags & SMSG_HAVE_RESULT) )
{
/* not supposed to happen */
- ERR(sendmsg, "SMSG_HAVE_RESULT not set smsg->flags=%x\n", smsg->flags);
+ ERR(sendmsg, "SMSG_HAVE_RESULT not set: smsg->flags=%x\n", smsg->flags);
+ QUEUE_ClearWakeBit( queue, QS_SMRESULT );
}
else
{
lResult = smsg->lResult;
TRACE(sendmsg,"smResult = %08x\n", (unsigned)lResult );
}
+ }
QUEUE_ClearWakeBit( queue, QS_SMRESULT );
- }
/* remove the smsg from the processingg list of the source queue */
QUEUE_RemoveSMSG( queue, SM_PROCESSING_LIST, smsg );
@@ -2218,7 +2219,7 @@
if (!(queue = (MESSAGEQUEUE *)QUEUE_Lock( GetFastQueue() )))
return 0;
- ret = (BOOL32)queue->smProcessing;
+ ret = (BOOL32)queue->smWaiting;
QUEUE_Unlock( queue );
return ret;