|
|
diff --git a/src/org/jruby/java/MiniJava.java b/src/org/jruby/java/MiniJava.java
index 15c43ab..8d65b21 100644
--- a/src/org/jruby/java/MiniJava.java
+++ b/src/org/jruby/java/MiniJava.java
@@ -424,10 +424,12 @@ public class MiniJava implements Library {
} else {
Label dispatch = new Label();
Label end = new Label();
+ Label line;
// Try to look up field for simple name
// lock self
+ line = new Label(); mv.visitLineNumber(1, line); mv.label(line);
mv.getstatic(name, "rubyClass", ci(RubyClass.class));
mv.monitorenter();
@@ -455,6 +457,7 @@ public class MiniJava implements Library {
mv.pop();
// exit monitor before making call
// FIXME: this not being in a finally is a little worrisome
+ line = new Label(); mv.visitLineNumber(1, line); mv.label(line);
mv.getstatic(name, "rubyClass", ci(RubyClass.class));
mv.monitorexit();
mv.aload(0);
@@ -468,7 +471,8 @@ public class MiniJava implements Library {
mv.label(dispatch);
mv.dup();
mv.putstatic(name, simpleName, ci(DynamicMethod.class));
-
+
+ line = new Label(); mv.visitLineNumber(1, line); mv.label(line);
mv.getstatic(name, "rubyClass", ci(RubyClass.class));
mv.monitorexit();
@@ -493,7 +497,7 @@ public class MiniJava implements Library {
mv.label(end);
coerceResultAndReturn(method, mv, returnType);
- }
+ }
mv.end();
}
}
|