changeset 21986:67ea94a23074

Truffle/SL Debugging: fix two places where the QuitException wasn't being handled correctly.
author Michael Van De Vanter <michael.van.de.vanter@oracle.com>
date Tue, 30 Jun 2015 17:29:17 +0200
parents 4858c5e074e9
children b2d1c8ff592a
files truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLLanguage.java truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java
diffstat 2 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLLanguage.java	Fri Jun 26 16:25:41 2015 +0200
+++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/SLLanguage.java	Tue Jun 30 17:29:17 2015 +0200
@@ -475,6 +475,8 @@
             // TODO (mlvdv) fix to run properly in the current VM
             try {
                 SLLanguage.run(source);
+            } catch (QuitException ex) {
+                throw ex;
             } catch (Exception e) {
                 throw new DebugSupportException(e);
             }
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java	Fri Jun 26 16:25:41 2015 +0200
+++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java	Tue Jun 30 17:29:17 2015 +0200
@@ -86,6 +86,8 @@
         try {
             result = child.executeGeneric(vFrame);
             probeNode.returnValue(child, vFrame, result);
+        } catch (KillException e) {
+            throw (e);
         } catch (Exception e) {
             probeNode.returnExceptional(child, vFrame, e);
             throw (e);