mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v1.10.2.1
This commit is contained in:
@@ -347,7 +347,7 @@ public class Xop_xatr_parser { // REF.MW:Sanitizer.php|decodeTagAttributes;MW_AT
|
||||
++i;
|
||||
}
|
||||
repeated_atrs_hash.Clear();
|
||||
return (Xop_xatr_itm[])xatrs.XtoAry(Xop_xatr_itm.class);
|
||||
return (Xop_xatr_itm[])xatrs.Xto_ary(Xop_xatr_itm.class);
|
||||
}
|
||||
private void Make(Gfo_msg_log log_mgr, byte[] src, int atr_end) {
|
||||
Xop_xatr_itm xatr = null;
|
||||
@@ -366,11 +366,11 @@ public class Xop_xatr_parser { // REF.MW:Sanitizer.php|decodeTagAttributes;MW_AT
|
||||
log_mgr.Add_itm_none(Log_invalid_atr, src, atr_bgn, atr_end);
|
||||
}
|
||||
if (valid) { // note that invalid will have no key_bgn / key_end
|
||||
byte[] key_bry = key_bfr_on ? key_bfr.XtoAryAndClear() : Bry_.Mid(src, xatr.Key_bgn(), xatr.Key_end());
|
||||
byte[] key_bry = key_bfr_on ? key_bfr.Xto_bry_and_clear() : Bry_.Mid(src, xatr.Key_bgn(), xatr.Key_end());
|
||||
xatr.Key_bry_(key_bry);
|
||||
Invalidate_repeated_atr(xatr, key_bry);
|
||||
}
|
||||
if (val_bfr_on) xatr.Val_bry_(val_bfr.XtoAryAndClear());
|
||||
if (val_bfr_on) xatr.Val_bry_(val_bfr.Xto_bry_and_clear());
|
||||
xatrs.Add(xatr);
|
||||
mode = Mode_atr_bgn; quote_byte = Byte_ascii.Nil; valid = true;
|
||||
atr_bgn = key_bgn = val_bgn = key_end = val_end = eq_pos = -1;
|
||||
|
||||
@@ -38,7 +38,7 @@ public class Xop_xnde_tag_regy {
|
||||
if (itm.Xtn()) rv.Add(itm);
|
||||
for (Xop_xnde_tag itm : more)
|
||||
rv.Add(itm);
|
||||
return (Xop_xnde_tag[])rv.XtoAry(Xop_xnde_tag.class);
|
||||
return (Xop_xnde_tag[])rv.Xto_ary(Xop_xnde_tag.class);
|
||||
}
|
||||
private void Init_reg(Btrie_slim_mgr tag_regy, Xop_xnde_tag... ary) {
|
||||
for (Xop_xnde_tag tag : ary) {
|
||||
|
||||
@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.xowa; import gplx.*;
|
||||
import gplx.xowa.xtns.*;
|
||||
import gplx.xowa.xtns.*; import gplx.xowa.parsers.tblws.*;
|
||||
public class Xop_xnde_tkn extends Xop_tkn_itm_base implements Xop_tblw_tkn {
|
||||
@Override public byte Tkn_tid() {return Xop_tkn_itm_.Tid_xnde;}
|
||||
public int Tblw_tid() {return tag.Id();} // NOTE: tblw tkns actually return xnde as Tblw_tid
|
||||
|
||||
@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.xowa; import gplx.*;
|
||||
import gplx.core.btries.*; import gplx.xowa.apps.fsys.*; import gplx.xowa.wikis.*; import gplx.xowa.xtns.*; import gplx.xowa.xtns.pfuncs.strings.*; import gplx.html.*;
|
||||
import gplx.xowa.parsers.logs.*;
|
||||
import gplx.xowa.parsers.logs.*; import gplx.xowa.parsers.tblws.*;
|
||||
public class Xop_xnde_wkr implements Xop_ctx_wkr {
|
||||
public void Ctor_ctx(Xop_ctx ctx) {}
|
||||
public boolean Pre_at_bos() {return pre_at_bos;} public void Pre_at_bos_(boolean v) {pre_at_bos = v;} private boolean pre_at_bos;
|
||||
@@ -559,7 +559,7 @@ public class Xop_xnde_wkr implements Xop_ctx_wkr {
|
||||
if (tag_id == -1) {ctx.App().Usr_dlg().Warn_many("", "", "parser.xtn: could not extract int: page=~{0}", ctx.Cur_page().Url().Xto_full_str_safe()); return Bry_finder.Not_found;}
|
||||
Bry_bfr tmp = ctx.Wiki().Utl_bry_bfr_mkr().Get_b128();
|
||||
tmp.Add(Pfunc_tag.Xtag_end_lhs).Add_int_pad_bgn(Byte_ascii.Num_0, 10, tag_id).Add(Pfunc_tag.Xtag_rhs);
|
||||
byte[] tag_end = tmp.Mkr_rls().XtoAryAndClear();
|
||||
byte[] tag_end = tmp.Mkr_rls().Xto_bry_and_clear();
|
||||
int rv = Bry_finder.Find_fwd(src, tag_end, open_end + Pfunc_tag.Xtag_rhs.length);
|
||||
if (rv == Bry_finder.Not_found) {ctx.App().Usr_dlg().Warn_many("", "", "parser.xtn: could not find end: page=~{0}", ctx.Cur_page().Url().Xto_full_str_safe()); return Bry_finder.Not_found;}
|
||||
rv = Bry_finder.Find_bwd(src, Byte_ascii.Lt, rv - 1);
|
||||
@@ -664,6 +664,7 @@ public class Xop_xnde_wkr implements Xop_ctx_wkr {
|
||||
case Xop_xnde_tag_.Tid_listing_sleep: xnde_xtn = tkn_mkr.Xnde_listing(tag_id); break;
|
||||
case Xop_xnde_tag_.Tid_timeline:
|
||||
boolean log_wkr_enabled = Timeline_log_wkr != Xop_log_basic_wkr.Null; if (log_wkr_enabled) Timeline_log_wkr.Log_end_xnde(ctx.Cur_page(), Xop_log_basic_wkr.Tid_timeline, src, xnde);
|
||||
ctx.Cur_page().Html_data().Module_mgr().Itm_timeline().Enabled_y_();
|
||||
break;
|
||||
case Xop_xnde_tag_.Tid_xowa_tag_bgn:
|
||||
case Xop_xnde_tag_.Tid_xowa_tag_end:
|
||||
|
||||
Reference in New Issue
Block a user