[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Unstructured locking bug
From: |
Etienne Gagnon |
Subject: |
Unstructured locking bug |
Date: |
Sun, 13 Mar 2005 17:18:58 -0500 |
User-agent: |
Debian Thunderbird 1.0 (X11/20050117) |
Hi all,
Recent gtk peer code seems to have introduced a subtle bug, only visible
on VM's that verify that structured locking is properly done. I have
put a description of the bug in the bug tracker at:
http://savannah.gnu.org/bugs/index.php?func=detailitem&item_id=12301
There seems to be an easy fix:
1- *Remove* the MonitorExit() ... MonitorEnter() calls [yes, they're in
that order!]
2- Document somewhere (in the awt/gtk documentation) the hierarchy of
locks: one must release the GDK lock before acquiring the EventQueue lock,
Another, but more complex solution, might be to make sure that the
calling Java code does not hold the EventQueue lock.
In any case, I hope someone will fix the problem, as the current code
results in a (valid) java.lang.IllegalMonitorStateException on SableVM.
(see the bug report URL above for details).
Regards,
Etienne
--
Etienne M. Gagnon, Ph.D. http://www.info2.uqam.ca/~egagnon/
SableVM: http://www.sablevm.org/
SableCC: http://www.sablecc.org/
signature.asc
Description: OpenPGP digital signature
- Unstructured locking bug,
Etienne Gagnon <=
Re: Unstructured locking bug, Etienne Gagnon, 2005/03/14