dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Dotgnu-pnet-commits] CVS: pnet/support wait_mutex.c,1.4,1.5


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/support wait_mutex.c,1.4,1.5
Date: Thu, 26 Jun 2003 18:23:37 -0400

Update of /cvsroot/dotgnu-pnet/pnet/support
In directory subversions:/tmp/cvs-serv17806/support

Modified Files:
        wait_mutex.c 
Log Message:


Fix recursive entry/leave bug in ILWaitMonitorSpeculativeLeave/CompleteLeave.
Added implementation of SetObjectMonitor for hashing monitors.


Index: wait_mutex.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/support/wait_mutex.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** wait_mutex.c        26 Jun 2003 03:39:25 -0000      1.4
--- wait_mutex.c        26 Jun 2003 22:23:35 -0000      1.5
***************
*** 150,154 ****
        {
                /* The mutex is already owned by this thread, so re-acquire it 
*/
!               ++(mutex->count);
                result = IL_WAITREG_ACQUIRED;
        }
--- 150,154 ----
        {
                /* The mutex is already owned by this thread, so re-acquire it 
*/
!               ++(mutex->count);               
                result = IL_WAITREG_ACQUIRED;
        }
***************
*** 361,371 ****
                result = 0;
        }
!       else if (mutex->count == 0 && mode == 2)
        {
!               mutex->owner = _ILWakeupQueueWake(&(mutex->queue));
!               if(mutex->owner != 0)
                {
!                       mutex->count = 1;
                }
                result = 1;
        }
--- 361,377 ----
                result = 0;
        }
!       else if (mode == 2)
        {
!               /* Complete a release (after a call with mode = 1) */
!               
!               if (mutex->count == 0)
                {
!                       mutex->owner = _ILWakeupQueueWake(&(mutex->queue));
!                       if(mutex->owner != 0)
!                       {
!                               mutex->count = 1;
!                       }
                }
+ 
                result = 1;
        }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]