changeset 18503:290eb3f3d643

Fix stack overflow in printing
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Tue, 25 Nov 2014 12:24:14 -0800
parents f38677340519
children c2b23f6e4603
files graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/EffectList.java
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/EffectList.java	Tue Nov 25 08:17:33 2014 -0800
+++ b/graal/com.oracle.graal.virtual/src/com/oracle/graal/virtual/phases/ea/EffectList.java	Tue Nov 25 12:24:14 2014 -0800
@@ -183,7 +183,12 @@
         for (Field field : effect.getClass().getDeclaredFields()) {
             try {
                 field.setAccessible(true);
-                str.append(first ? "" : ", ").append(format(field.get(effect)));
+                Object object = field.get(effect);
+                if (object == this) {
+                    // Inner classes could capture the EffectList itself.
+                    continue;
+                }
+                str.append(first ? "" : ", ").append(format(object));
                 first = false;
             } catch (SecurityException | IllegalAccessException e) {
                 throw new RuntimeException(e);