diff -r 57c618273d5c -r bbf46f59e123 windowing/windowserver/nga/SERVER/EVQUEUE.CPP --- a/windowing/windowserver/nga/SERVER/EVQUEUE.CPP Thu Aug 19 11:11:18 2010 +0300 +++ b/windowing/windowserver/nga/SERVER/EVQUEUE.CPP Tue Aug 31 16:31:06 2010 +0300 @@ -22,6 +22,7 @@ #include "panics.h" #include "pointer.h" #include "advancedpointereventhelper.h" +#include "debughelper.h" GLREF_D CDebugLogBase* wsDebugLog; @@ -100,6 +101,9 @@ { if ((iEventSignalledState&EEventFlagSignalled && !(iEventSignalledState&EEventFlagCancelled)) || !iEventMsg.IsNull()) { +#ifdef LOG_WSERV_EVENTS + RDebug::Printf("_WSEVENT: CEventBase::EventReadyCheck, Event is not ready"); +#endif iWsOwner->PPanic(EWservPanicReadOutstanding); } } @@ -646,6 +650,9 @@ case EEventPointerExit: case EEventDragDrop: breakLoopAndRemoveEvent: +#ifdef LOG_WSERV_EVENTS + RDebug::Print(_L("_WSEVENT: CEventQueue::Purge(), The event to be purged is %S"), &WsEventName(*eventToPurge)); +#endif RemoveEvent(indexToPurge); return; case EEventKeyUp: @@ -950,14 +957,26 @@ TBool ret=ETrue; Wait(); if (iCount==iQueueSize && !Expand(aPriority)) + { ret=EFalse; +#ifdef LOG_WSERV_EVENTS + RDebug::Printf("WSEVENT: CEventQueue::QueueEvent(): 0x%X:  Queue Full!!!!!, iCount = %d, iQueueSize = %d", this, iCount, iQueueSize); + RDebug::Print(_L("WSEVENT: CEventQueue::QueueEvent(): 0x%X:  Queue Full!!!!! TWsEvent.Type() = %S"), this, &WsEventName(event)); +#endif + } else { if (!iEventMsg.IsNull()) { SignalEvent(); } +#ifdef LOG_WSERV_EVENTS + RDebug::Printf("_WSEVENT: CEventQueue::QueueEvent, Right before adding the event"); +#endif *EventPtr(iCount++)=event; +#ifdef LOG_WSERV_EVENTS + RDebug::Print(_L("_WSEVENT: CEventQueue::QueueEvent, Event %S successfully queued"), &WsEventName(event)); +#endif } Signal(); return(ret); @@ -1057,6 +1076,9 @@ { WS_ASSERT_DEBUG((iEventPtr+iHead)->Type()!=EEventMarkInvalid, EWsPanicCheckEventQueue); CEventBase::GetData(iEventPtr+iHead,sizeof(*iEventPtr)); +#ifdef LOG_WSERV_EVENTS + RDebug::Printf("_WSEVENT: CEventQueue::GetData(), TWsEvent.Type() = %d", (iEventPtr+iHead)->Type()); +#endif __ZAP_EVENT(iEventPtr+iHead); iHead=(iHead+1)%iQueueSize; iCount--; @@ -1083,6 +1105,9 @@ // Remove event 'index' in the queue, this event MUST exist in the queue // { +#ifdef LOG_WSERV_EVENTS + RDebug::Printf("_WSEVENT: CEventQueue::RemoveEvent(index), Remove event index %d in the queue", index); +#endif WS_ASSERT_DEBUG(index < iCount, EWsPanicCheckEventQueue); RemoveEvent(EventPtr(index)); } @@ -1092,6 +1117,9 @@ // Remove event in the queue, this event MUST exist in the queue // { +#ifdef LOG_WSERV_EVENTS + RDebug::Print(_L("_WSEVENT: CEventQueue::RemoveEvent(aEvToRemove), Remove event %S in the queue"), &WsEventName(*aEvToRemove)); +#endif iCount--; TWsEvent* last = EventPtr(iCount); TWsEvent* prev;