[e-lang] Notes from latest Joe-E meeting
Tyler Close
tyler.close at gmail.com
Thu Apr 26 20:26:45 EDT 2007
On 4/26/07, Mark Miller <erights at gmail.com> wrote:
> - There is an attack with try-finally and VirtualMachineError.
> try {
> ... X ...
> } catch (final Error reason) {
> throw JoeE.abort(reason);
> } finally {
> ... Y ...
> }
We could change the boilerplate for a finally clause to:
try {
...
} catch (final Error e) {
while (true) { try { JoeE.abort(e); break; } catch (Throwable t) {} }
throw e;
} finally {
...
}
This is weird but is still better than banning finally clauses
entirely. We could then document that this insanity would go away if
Java supported Keepers and point to a JSR.
The JLS doesn't give us any guarantees on what can be relied upon when
an Error is thrown, but I suspect the above code is safe. Anyone have
any expectations otherwise?
Tyler
--
The web-calculus is the union of REST and capability-based security:
http://www.waterken.com/dev/Web/
Name your trusted sites to distinguish them from phishing sites.
https://addons.mozilla.org/firefox/957/
More information about the e-lang
mailing list