From c9b33fc5179ea13684ef1a941e0d415269951360 Mon Sep 17 00:00:00 2001 From: Joel Teichroeb Date: Mon, 9 Apr 2012 17:11:25 -0700 Subject: [PATCH] GRIM: Fix an error with patchr instead of detecting it later --- dists/engine-data/patches/grim/si.lua.patchr | 13 +++++++++++++ dists/engine-data/residualvm-grim-patch.lab | Bin 5023 -> 5565 bytes engines/grim/lua/ltask.cpp | 8 +------- 3 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 dists/engine-data/patches/grim/si.lua.patchr diff --git a/dists/engine-data/patches/grim/si.lua.patchr b/dists/engine-data/patches/grim/si.lua.patchr new file mode 100644 index 0000000000..dda06838aa --- /dev/null +++ b/dists/engine-data/patches/grim/si.lua.patchr @@ -0,0 +1,13 @@ +PATCHR 1 + +# In the function si.set_up_actors (line 848), calls "start_script(si.naranja_drinking)", +# which doesn't exist. +# The problem with that is that lua_error ends the function that was going on, +# breaking si.set really badly. + +begin 826b0f8e65bf5818ca64a29a37e65c0a 8CC4 #Both v1.0 and v1.01 + +#Just replace the bad call with NOP +replace 4959 FF FF FF FF FF FF FF FF + +end diff --git a/dists/engine-data/residualvm-grim-patch.lab b/dists/engine-data/residualvm-grim-patch.lab index 4e41afb0caee225b2a3721846922fad791aa455a..b96e7b2f81f4f3080436ee7d5b8c1fb4d44451d4 100644 GIT binary patch delta 1337 zcmZux-D@0G6uSSh} znN2J{q#y{QRMvUX7sXfUoA?;0FFvSX|A|tl(1+5}J}7$bOloVhmzm$W_nzN9A9v1~ z?@k`h9klApYk*^d5VDJ}7=Pn?Gwe^vB#O@?gxn97WE$l#O33z+Uc&Y7aYCkI0pS9Q zKhuO{j@B()KgkjDSt!uIhvG(okn?C0M}%~`qwgWxXC-6EN(1I0#m=9yygffw+;}%%d(f z)38j(g*|2rIrV-_3dV!vX<<6GTM!K2$a;ONacKj})Vob(R6e4MzRB|BGOnD-6O%Nx zvUc%5+UQ={*S{WG_T~E_!TUCJ3h_68PQ#010@w}<-Z$X|#5>{jaRHPfSACPQY+(9Q zR>b^C_8r7uvvY`#vuAyVlnXA$$i0obw{lw{`c-}jr%U-IpKy?0Tc9bM4-BSps3?j8 zy&gXQ+fzZ3U%n}adjI6lqou_{1<@?rKzvZp5U;$lnmcxB&tm>EvYZvRbkpIs3yR9S zUMN?bXx3YsD@E$j=w&pq9i5}kIZUb{r{o8G7!|objRtwiF_DZD+eG{&wul&xU+{VL z_=|}twHkXlG2H8pPweNo@bOn%LY$uviQSse4vtrXC>~ff!R>SC4Nc9}EfXBQns>5f|xiY;_Fu&s{4cVS<5`xpUpL3aX)&C=$!ZP|c@EB0Q9&L{3O z2X-v<1D5GK>e!qKzem9XE)C;4bXeE8jt*(6!*^zN6VytzBlT2XRXROIEvp)<%B)gj zXBKcvlNhLthU}HIueSYixje+adRAK^3^eFpK@jxXyX()(Os*+4Xg0?_$8X;II(1Ea z>~tTCX~wl+IOsB$BhlMSi|+g(Ek5Dh^jnDO%$YHL*2*bpu^BS6eNiSb&O*VIQ6U7ZKu1-v9sr delta 743 zcmdn1Jzu@v$I;180SMR_7#QM#7zFMEu{#r($-oDs)R-9<-m^gXGC)d{gMpzMDz63P zPvBx;&;Y6d0b3y6!OOt#1k7V#2n5n|fQB%$LIg4r^>RuR^$HS8k~4}JiYM;pWlBn! zcurm{B_};TB|p~)SvoIq;zO0mbu5OAT$4AkI04D;EKZZHSam07usTg%&1%EP#ii_= zpI2O>P?nfenmYLhP}rKyd~z{c08lD5FNG_>F~r#;NWpOORkj46{%{_UDRX$NC*R=l znyk#LJ=vev3MkUUYd!e{uQiax#%Dj-jW2leEIymb*ZJ&#A`<+5MqEXy1v!bysS2i+ zmWc{!X+VT5l%il@g6fpw$#eOwC*R~Zn9L>6Fu7YG8Qnc>j3C?AFltWD1=1CaI;>## z0!2)K{Kt&eljWIIC%ZBQqx*3sllA1MO!|{WnRC(2>=eqH{6#2(hfBF6U!k-hC9x!x zYjU=*$>asX)|2lDt4(GWF-AAeUBqf~lZgK0O(NB-T&{jDT$4>jO(tiF%1`bRm6qjl z^YrmiurxI=S1>YBaB~BzfQRW6W|PS$nQegX|QMTTkA} z?mn53Lwm9=2Pnw1I6wigg2Q3*OOBAqcAWN;>p1O!A_q8;g4@W{)D$hafkGBog4>nL Yc5*Y9(d2Dh4U^5elPAyS_Jo8e0F}MO^8f$< diff --git a/engines/grim/lua/ltask.cpp b/engines/grim/lua/ltask.cpp index c3d143ea00..186e2467ab 100644 --- a/engines/grim/lua/ltask.cpp +++ b/engines/grim/lua/ltask.cpp @@ -38,13 +38,7 @@ void start_script() { lua_Type type = ttype(Address(paramObj)); if (paramObj == LUA_NOOBJECT || (type != LUA_T_CPROTO && type != LUA_T_PROTO)) { - warning("lua: Bad argument to start_script. - lua/ltask.cpp:32"); - // NOTE: Decomment the lua_error if you want to see the stacktrace. - // It is commented out because si.lua, in the function si.set_up_actors (line 848), - // calls "start_script(si.naranja_drinking)", which doesn't exist. The problem with - // that is that lua_error ends the function that was going on, breaking - // si.set really badly. - // lua_error("Bad argument to start_script"); + lua_error("Bad argument to start_script"); return; }