From bc2beba14823fbd586499ce29e1ffd3a44e7c505 Mon Sep 17 00:00:00 2001 From: gnosygnu Date: Sun, 19 Jan 2020 14:28:22 -0500 Subject: [PATCH] Pages: Do not escape if invalid attributes [#656] --- .../src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde.java | 5 +++++ .../xtns/proofreadPage/Pp_pages_nde_basic_tst.java | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde.java b/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde.java index 589f17c70..945ae1c84 100644 --- a/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde.java +++ b/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde.java @@ -44,6 +44,11 @@ public class Pp_pages_nde implements Xox_xnde, Mwh_atr_itm_owner1 { unknown_xatrs.Add(new Pp_index_arg(xatr.Key_bry(), xatr.Val_as_bry())); return; } + + // skip valid xatrs with invalid values; EX: ; ISSUE#:656 DATE:2020-01-19 + if (xatr.Val_bgn() == -1) + return; + Byte_obj_val xatr_id = (Byte_obj_val)xatr_id_obj; byte[] val_bry = xatr.Val_as_bry(); switch (xatr_id.Val()) { diff --git a/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde_basic_tst.java b/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde_basic_tst.java index 9f83e5d12..291bcdb6f 100644 --- a/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde_basic_tst.java +++ b/400_xowa/src/gplx/xowa/xtns/proofreadPage/Pp_pages_nde_basic_tst.java @@ -165,4 +165,14 @@ public class Pp_pages_nde_basic_tst { , "

" )); } + @Test public void Ignore_invalid_to() { // ISSUE#:656 DATE:2020-01-19 + fxt.Init_page_create("Page:A/1", "A"); + fxt.Init_page_create("Page:A/2", "B"); + fxt.Init_page_create("Page:A/3", "C"); + fxt.Test_parse_page_wiki_str("", String_.Concat_lines_nl + ( "

A B C " // fails if <pages index="A" from=1 to 3 /> + , "

" + , "" + )); + } }