From 6dfe9841725f12c27382b2d31450839060d02ca6 Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Sat, 17 Apr 2010 15:06:28 +0000 Subject: [PATCH] Improve compatibility with luaj 1.0 --- src/core/org/luaj/vm2/lib/PackageLib.java | 5 +++-- test/junit/org/luaj/vm2/vm1/luajvm1-tests.zip | Bin 31856 -> 31348 bytes 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/org/luaj/vm2/lib/PackageLib.java b/src/core/org/luaj/vm2/lib/PackageLib.java index d4eea5b2..17cfc566 100644 --- a/src/core/org/luaj/vm2/lib/PackageLib.java +++ b/src/core/org/luaj/vm2/lib/PackageLib.java @@ -161,7 +161,8 @@ public class PackageLib extends OneArgFunction { if ( ! value.istable() ) { /* not found? */ /* try global variable (and create one if it does not exist) */ - module = findtable( env, modname ); + LuaValue globals = LuaThread.getGlobals(); + module = findtable( globals, modname ); if ( module == null ) error( "name conflict for module '"+modname+"'" ); LOADED.set(modname, module); @@ -283,7 +284,7 @@ public class PackageLib extends OneArgFunction { LuaValue result = chunk.call(name); if ( ! result.isnil() ) LOADED.set( name, result ); - else if ( LOADED.get(name) == _SENTINEL ) + else if ( (result = LOADED.get(name)) == _SENTINEL ) LOADED.set( name, result = LuaValue.TRUE ); return result; } diff --git a/test/junit/org/luaj/vm2/vm1/luajvm1-tests.zip b/test/junit/org/luaj/vm2/vm1/luajvm1-tests.zip index e7d455907f458db7ccc3e4bb8b9d7942f6868246..2e28ab7e1edca7f3aff5e482926611633b6041bb 100644 GIT binary patch delta 1306 zcmV+#1?Bqi_yP3v0kE0Qm>4=fTdd?dfDXeJN)4QwrHpQn$XOrVLCG(x=_-{nE2N2$MxXA%69mYw_zZGNv6==)Z|e?6Ik^{Q1rx}sGg zM8|NwTCb8s7?5c8B5$gysfGS|RA8P}+cquImrX89vG3|!7dW0r`#4S0jcAqb+FI-* zdQ$byf@aYan7e^;28@n4SVkF5b8!F^7D7`g0lF>fLpX3~95|gx2n8%E1%RtTvdrQj zT1O(35e;v`SPVbKf5sY)g9;A81avVtq45U`j3zhy!G=G0;9DEM^}ru(_@f8@(T0EY zz@KdRlL!9EhJPYBCCj9EEU_y=U6j$LcO0rC8Vkex#A>*iQ=@|r4j0Y3fX@Z^S=vr9 zk@ZEGVG$a@=Yb=eaFATt7W!+YbdmF-|9)_aHiJw+5?!1ce)^rl)zHeqB*KoYCKw}q<5%t<67IhnhE1hW6Vwu&3S;&12_-q^N?&*D1B+Z z@3Q&o;FWpAf1M3@g|RjM;@j0P?5=+C?P}Hqd@jJc7*R}Yt}1`I+0|Vw+n=H;>JAv) ziKz@nI0;u6iFC)Ga5+oB7mNwoLYt9>ne;3UT-qV?(J)P&s)0rbZogJK8 zhH^W{Z8^fNgO45$poS~;enW5?QWXO%(=B8XQ+$I?|H%0Q8J~4ry zb&f>?7Y3TgD7e-dtGBPsNXD7rn>X1baC(=f!wwKUr_Ra=rz!DEFaCT&LmW2Y@HsD; zkeY<_f5NEaFbS!75}QF1owV2eHA=$qseKG<*tthp%#S8Am|Qqp%wl&1nJvM!f;~Wb zTF8+_`Z-_;2lzSk5)SjLDZ+O>gK$0nxMu&7y zuC^(}mp0_TB#gTtr!2m-A&XqX;Y%BGz!Hvke=RwZW{XJuf$2pYf4xca<;w_vKAr#L zu!a}<-$&x?e~14m33SW9!9$I}F9!1_fw}NymIr`=ZeNrt7Q4oL3p{(O0>CtI<{2jMFatIU z7_#QjL8@Q19m7Q;i?x=npK}QxgB;oZ1+%&>V=%MlUmO+<+&z&zTec|7@&f<>-jfh^ zNddx>T6Q`C4U?62GzPLU003!kld*Rblj3$B0eF)EcQyfElQ?%f2#7fV0BvD(Xp``F z6qAp48UY@Ys&_a6!;|B8I|0d)A9yzb@RL_~H32J=jd(Tz)04z_HvxQ;{CGA2l#?@g zI05jJYFYLggzH6z1p004Alb96Hr1bfmPLNjHtN3F}*nC z{Y72?7!(J9g8%?{5{U#N>7+l!{ZFUKz)5XbI6iVW`lIpK_%)i%XcO#eGT2c>o+LQN$z08bLv;8pIqYf%{ zC53DC90l1}^r-q`iCN|o$>mJ_a6}X=Rmp-k$%BtM@a(LH4W?t(OxI~5#G}lBAcIF? z86hmyxW7aGP++O1Y=jVl0%dyslxUa{(uW&|xna7EJBGBnYWATjVFkJMc&?X*Va0mVT~_x=FXqCzx8-^5oIwa zHBH?_lHcmZ6SUR`NN>W0g+wKsvhvQ5OBvr&qi-*7_tA~q?RvkQ)OzFM@3*e8`dN(x z4Ao|O$uu==j2*XF3KwQZj8H{kUQEpqm#2ZR4CpYT+gFjA))OAu3^CXZgLKj5)dwH| zu=kSzwx0?lnoppYdr;7iTu8onOM?%M<~OE>CKo942QOQk6smLsS44$fS+Qs&u~3O zK%f>O?}Q@-3`HXS-O@cI{QC57N{0$F?fFYIUMAa5O5Nx*zY{bN#=`o(FE=l6E5=@I zb3G<=-tpnM09@HiHGD67XFNE2F7NCR()R?X%{^|n%2!wL-_Fl;Y(4{r@6n@{=c>}u zwjEEz)iEn2HFQ~ZL|$w&iK5a5SFUsMIGWH}Zot7xG92=&W<(-}rk<{RwQ#sA&m+`6oe`Q3}SiMZIEnjO#Wd#?Wb@=4L)fL2HhU#I{rpYw}hMQJ_ z^&6@O%;*inoekB48N>GV9Ns$MGAQK82bcCoBEEow@Q}l$S3;`g(o$UP+;i1Zd9OxJo3${R4sQTb1D2=Ko zplA*N1kz97{XWnO@zC@^GGs_YgGo>@4YQAx>~F%M+5OIiWJ53@3Az-5;c2=A&0La# z3PRMu9OzYu9@qo%g`z