mirror of
https://github.com/msojocs/wx-compiler.git
synced 2025-07-19 00:00:04 +08:00
fix: 逻辑错误
This commit is contained in:
parent
e8ddf7d6c9
commit
8ccd5799a8
@ -15,8 +15,11 @@ namespace WXSS
|
||||
{
|
||||
}
|
||||
|
||||
int RenderCode_i = 0;
|
||||
void CSSSyntaxTree::RenderCode(std::string & a2, bool a3)
|
||||
{
|
||||
RenderCode_i++;
|
||||
int inner_RenderCode_i = RenderCode_i; // 10296
|
||||
if (this->offset_116)
|
||||
{
|
||||
if (!this->offset_172)
|
||||
|
@ -15,15 +15,15 @@ namespace WXSS
|
||||
{
|
||||
for (auto lt = a2->offset_120.begin(); lt != a2->offset_120.end(); lt++)
|
||||
{
|
||||
if (lt->get()->offset_0 == "SELECTORS")
|
||||
if ((*lt)->offset_0 == "SELECTORS")
|
||||
{
|
||||
auto v2 = lt->get()->offset_120;
|
||||
auto v2 = (*lt)->offset_120;
|
||||
if (v2.size() == 1)
|
||||
{
|
||||
auto v3 = v2.front().get();
|
||||
auto v3 = v2[0];
|
||||
if (v3->offset_0 == "F_SELECTOR")
|
||||
{
|
||||
auto v4 = v2.front()->offset_120;
|
||||
auto v4 = v2[0]->offset_120;
|
||||
if (v4.size() > 1)
|
||||
{
|
||||
auto v12 = v4[1];
|
||||
@ -35,7 +35,7 @@ namespace WXSS
|
||||
a2->offset_172 = 1;
|
||||
if (v4.size() == 5)
|
||||
{
|
||||
auto lb = v4[3].get();
|
||||
auto lb = v4[3];
|
||||
if (lb->offset_0 == "SELECTOR")
|
||||
{
|
||||
auto v13 = lb->offset_120;
|
||||
@ -119,6 +119,7 @@ namespace WXSS
|
||||
*v24 = v26.str();
|
||||
|
||||
v18->offset_24.offset_4 = v24;
|
||||
v18->offset_24.offset_0 = 3;
|
||||
v18->offset_164 = v9 + 1;
|
||||
v18->offset_168 = v9 + 2;
|
||||
|
||||
@ -426,7 +427,7 @@ namespace WXSS
|
||||
v14.push_back(ch);
|
||||
}
|
||||
}
|
||||
if (a2->offset_24.offset_16 != lit.length())
|
||||
if (a2->offset_24.offset_16 != v14.length())
|
||||
{
|
||||
std::shared_ptr<std::string> str(new std::string());
|
||||
*str = v14;
|
||||
@ -530,8 +531,11 @@ namespace WXSS
|
||||
* 00519BB4 - WXSS::CSSTreeLib::RuleChain::MarkGood
|
||||
*
|
||||
*/
|
||||
int off_519BB4_i = 0;
|
||||
int off_519BB4(std::shared_ptr<WXSS::CSSTreeLib::Rule>& a1, std::shared_ptr<WXSS::CSSTreeLib::CSSSyntaxTree> &a2)
|
||||
{
|
||||
off_519BB4_i++;
|
||||
int inner_off_519BB4_i = off_519BB4_i;
|
||||
int ret = 0;
|
||||
for (int i = 0; i < a1->offset_4_vecPtr.size(); i++)
|
||||
{
|
||||
|
@ -5,6 +5,7 @@ namespace WXSS
|
||||
|
||||
Token::Token(/* args */)
|
||||
{
|
||||
this->offset_28[0] = '\0';
|
||||
}
|
||||
|
||||
Token::~Token()
|
||||
|
@ -408,7 +408,7 @@ namespace WXSS
|
||||
}
|
||||
sa++;
|
||||
}
|
||||
int v38 = ((lt & 0x20000) == 0) + v47 - 1;
|
||||
v38 = ((lt & 0x20000) == 0) + v47 - 1;
|
||||
for (char j = this->offset_0[v43]; sa < v38; j = this->offset_0[v38])
|
||||
{
|
||||
int v21 = j - 10;
|
||||
@ -421,8 +421,10 @@ namespace WXSS
|
||||
}
|
||||
v58.offset_12 = sa;
|
||||
int v39 = v38 - sa + 1;
|
||||
v58.offset_16 = v39;
|
||||
std::string str = this->offset_0.substr(sa, v39);
|
||||
v58.offset_4 = std::make_shared<std::string>(str);
|
||||
|
||||
}
|
||||
if (v58.offset_0 != 1)
|
||||
{
|
||||
|
@ -516,6 +516,7 @@ namespace WXSS
|
||||
std::string v33;
|
||||
auto v29 = k->second;
|
||||
this->GenExpr(v29, v37, v33);
|
||||
//
|
||||
if (v33.length())
|
||||
{
|
||||
this->DealRPX(v33, v37);
|
||||
|
@ -44689,7 +44689,7 @@ char __stdcall WXSS::CSSTreeLib::MarkHostRule::MarkGood(
|
||||
std::__shared_ptr<WXSS::CSSTreeLib::CSSSyntaxTree,(__gnu_cxx::_Lock_policy)2>::__shared_ptr(&v18[1], v11);
|
||||
v4 = *(struct _Unwind_Exception **)(*(_DWORD *)&v18[1] + 120);
|
||||
lpuexcpta = v4;
|
||||
v10 = *(_DWORD *)(*(_DWORD *)&v18[1] + 124) - (_DWORD)v4;
|
||||
v10 = *(_DWORD *)(*(_DWORD *)&v18[1] + 124) - (_DWORD)v4; // size
|
||||
if ( v10 > 8 )
|
||||
{
|
||||
v12 = *((_DWORD *)v4 + 2);
|
||||
@ -46240,7 +46240,7 @@ char __stdcall WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood(
|
||||
std::string::basic_string(&v17, Literal, (int)&v20);
|
||||
while ( (unsigned int)lpuexcpt < v18 )
|
||||
{
|
||||
if ( *((_BYTE *)lpuexcpt + (_DWORD)v17) == 46
|
||||
if ( *((_BYTE *)lpuexcpt + (_DWORD)v17) == '.'/*46*/
|
||||
&& (unsigned int)lpuexcpt + 1 < v18
|
||||
&& (unsigned int)(*((char *)lpuexcpt + (_DWORD)v17 + 1) - 48) > 9 )
|
||||
{
|
||||
@ -46252,6 +46252,7 @@ char __stdcall WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood(
|
||||
}
|
||||
lpuexcpt = (struct _Unwind_Exception *)((char *)lpuexcpt + 1);
|
||||
}
|
||||
// v15 -> v14.length()
|
||||
if ( *((_DWORD *)this + 10) != v15 )
|
||||
{
|
||||
Block = (char *)operator new(0x18u);
|
||||
|
Loading…
x
Reference in New Issue
Block a user