1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2024-09-28 14:30:51 +00:00

Scribunto: Fix 'gplx.Err: bad argument: nil: idx=0 len=0' on a few dozen fr.u pages

This commit is contained in:
gnosygnu 2017-05-28 09:28:30 -04:00
parent c4a2bbcd95
commit f129344506
2 changed files with 5 additions and 1 deletions

View File

@ -210,7 +210,8 @@ public class Scrib_lib_mw implements Scrib_lib {
return rslt.Init_obj((Keyval[])rv.To_ary(Keyval.class));
}
public boolean FrameExists(Scrib_proc_args args, Scrib_proc_rslt rslt) {
String frame_id = args.Pull_str(0);
String frame_id = args.Cast_str_or_null(0);
if (frame_id == null) return rslt.Init_obj(false); // no args should not throw error; PAGE:fr.u:Projet:Laboratoire/Espaces_de_noms/Modèle/Liste_des_pages DATE:2017-05-28
Xot_invk frame = Scrib_frame_.Get_frame(core, frame_id);
return rslt.Init_obj(frame != null);
}

View File

@ -28,6 +28,9 @@ public class Scrib_lib_mw__lib_tst {
@Test public void ParentFrameExists_false() {
fxt.Test_scrib_proc_bool(lib, Scrib_lib_mw.Invk_parentFrameExists, Object_.Ary_empty, false);
}
@Test public void FrameExists_false() { // no args should not throw error; PAGE:fr.u:Projet:Laboratoire/Espaces_de_noms/Mod<EFBFBD>le/Liste_des_pages DATE:2017-05-28
fxt.Test_scrib_proc_bool(lib, Scrib_lib_mw.Invk_frameExists, Object_.Ary_empty, false);
}
@Test public void GetAllExpandedArguments() {
fxt.Init_frame_current(Keyval_.new_("k1", "v1"));
fxt.Test_scrib_proc_str_ary(lib, Scrib_lib_mw.Invk_getAllExpandedArguments, Object_.Ary("current"), "1=\n k1=v1");