diff --git a/.classpath b/.classpath
index 80b76067..a50c56c6 100644
--- a/.classpath
+++ b/.classpath
@@ -6,6 +6,7 @@
+
diff --git a/src/j2se/org/luaj/lib/j2se/LuajavaLib.java b/src/j2se/org/luaj/lib/j2se/LuajavaLib.java
index bac9d6a0..4cba3345 100644
--- a/src/j2se/org/luaj/lib/j2se/LuajavaLib.java
+++ b/src/j2se/org/luaj/lib/j2se/LuajavaLib.java
@@ -38,6 +38,8 @@ import java.util.List;
import java.util.Map;
import org.luaj.vm.LFunction;
+import org.luaj.vm.LNil;
+import org.luaj.vm.LString;
import org.luaj.vm.LTable;
import org.luaj.vm.LUserData;
import org.luaj.vm.LValue;
@@ -126,7 +128,7 @@ public final class LuajavaLib extends LFunction {
final int ninterfaces = Math.max(0,vm.gettop()-2);
if ( ninterfaces <= 0 )
throw new LuaErrorException("no interfaces");
- final LValue function = vm.tofunction(-1);
+ final LValue lobj = vm.totable(-1);
try {
// get the interfaces
final Class[] ifaces = new Class[ninterfaces];
@@ -136,12 +138,18 @@ public final class LuajavaLib extends LFunction {
// create the invocation handler
InvocationHandler handler = new InvocationHandler() {
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
- vm.pushlvalue(function);
- int n = args.length;
- for ( int i=0; i0? args[0]: "/swingapp.luac");
+ String script = (args.length>0? args[0]: "/swingapp.lua");
System.out.println("loading '"+script+"'");
// load the file
diff --git a/src/test/res/swingapp.lua b/src/test/res/swingapp.lua
index b58ec403..37775b6d 100644
--- a/src/test/res/swingapp.lua
+++ b/src/test/res/swingapp.lua
@@ -18,3 +18,12 @@ jframe = luajava.bindClass( "javax.swing.JFrame" )
frame:setDefaultCloseOperation(jframe.EXIT_ON_CLOSE)
frame:pack()
frame:setVisible(true)
+
+local listener = luajava.createProxy("java.awt.event.MouseListener",
+ {
+ mouseClicked = function(me)
+ print("clicked!", me)
+ end
+ })
+
+frame:addMouseListener(listener)
diff --git a/version.properties b/version.properties
index 57f14439..2180e2b5 100644
--- a/version.properties
+++ b/version.properties
@@ -1 +1 @@
-version: 0.80
+version: 0.81