--- a/src/JavaContext.st Thu Nov 17 13:59:35 2011 +0000
+++ b/src/JavaContext.st Thu Nov 17 18:13:31 2011 +0000
@@ -375,10 +375,11 @@
self assert: (acqrMonitors isNil or: [ acqrMonitors isOrderedCollection ]).
acqrMonitors ifNil: [ acqrMonitors := Stack new ].
acqrMonitors push: mon.
+ self markForUnwind.
"Created: / 08-11-2011 / 14:19:21 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
"Modified: / 08-11-2011 / 21:40:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 09-11-2011 / 14:31:56 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+ "Modified: / 17-11-2011 / 19:13:15 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
!
programmingLanguage
@@ -389,8 +390,7 @@
!
removeMonitor: mon
- |poppedObject|
- "self assert: (acqrMonitors isNil or: [ acqrMonitors isOrderedCollection ])."
+ | poppedObject |
acqrMonitors isNil ifTrue: [
Logger
log: ('removeMonitor: called but no monitors in acqrMonitors (%1)'
@@ -411,11 +411,12 @@
facility: #JVM.
self breakPoint: #mh.
^ self.
- ]
+ ].
+ acqrMonitors isEmpty ifTrue: [self unmarkForUnwind].
"Created: / 08-11-2011 / 14:19:58 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
"Modified: / 08-11-2011 / 21:39:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 09-11-2011 / 14:34:05 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
+ "Modified: / 17-11-2011 / 19:14:29 / Marcel Hlopko <hlopkmar@fel.cvut.cz>"
! !
!JavaContext methodsFor:'exception handler support'!