From 814d840785a5cb861b357e8bb55d0b7d8bac0c14 Mon Sep 17 00:00:00 2001 From: msojocs Date: Sat, 2 Sep 2023 22:21:08 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E4=B8=80=E4=BA=9B?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- changelog.md | 10 ++ src/wxml/rewrite.cpp | 14 +- src/wxss/css_tree_lib/css_syntax_tree.cpp | 3 + src/wxss/css_tree_lib/lexical_checker.cpp | 21 ++- src/wxss/css_tree_lib/rule.cpp | 7 + src/wxss/token.cpp | 3 + ...tdesign-miniprogram-starter-retail.spec.ts | 74 ++++++++ .../case1-cmd.txt | 167 ++++++++++++++++++ .../case2-cmd.txt | 166 +++++++++++++++++ test/wcsc.disassembly.cpp | 6 +- test/wcsc.sh | 12 +- 11 files changed, 468 insertions(+), 15 deletions(-) create mode 100644 test/spec/wcsc/raw/tdesign-miniprogram-starter-retail.spec.ts create mode 100644 test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case1-cmd.txt create mode 100644 test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case2-cmd.txt diff --git a/changelog.md b/changelog.md index 6dc018c..11c7647 100644 --- a/changelog.md +++ b/changelog.md @@ -1,3 +1,13 @@ +## 🌈 v0.0.4 / 2023-08-31 + +🐞 Bug Fixes + +- `WXML::Rewrite::RewriteImg`: 变量赋值的错误 +- `WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood`: 比较字符串错误 + +🚀Features +- feat: 添加新的`wcsc`的测试用例 + ## 🌈 v0.0.3 / 2023-08-31 🐞 Bug Fixes diff --git a/src/wxml/rewrite.cpp b/src/wxml/rewrite.cpp index 75ec5db..463c265 100644 --- a/src/wxml/rewrite.cpp +++ b/src/wxml/rewrite.cpp @@ -269,16 +269,16 @@ namespace WXML { a2 = ""; bool v17 = 1; int result = 0; - for (int i=0; i < v21.size() - 1; i++) + for (int i=1; i < v21.size(); i++) { - auto cur = v21[i]; + auto cur = v21[i - 1]; if ( - v21[i].second == "url" - && v21[i + 1].second == "(" + cur.second == "url" + && v21[i].second == "(" ) { std::string v24 = ""; - while (v21.size() - 1 > ++i) + while (v21.size() > ++i) { if (v21[i].second == ")") { @@ -319,11 +319,11 @@ namespace WXML { if (v5.first == 2) { std::string v29 = v5.second.substr(1, v5.second.length() - 2); - a2 += v29; + v24 += v29; } else { - a2 += v5.second; + v24 += v5.second; } } } diff --git a/src/wxss/css_tree_lib/css_syntax_tree.cpp b/src/wxss/css_tree_lib/css_syntax_tree.cpp index b8a860e..d34cf00 100644 --- a/src/wxss/css_tree_lib/css_syntax_tree.cpp +++ b/src/wxss/css_tree_lib/css_syntax_tree.cpp @@ -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; if (this->offset_116) { if (!this->offset_172) diff --git a/src/wxss/css_tree_lib/lexical_checker.cpp b/src/wxss/css_tree_lib/lexical_checker.cpp index b508fc4..d31243f 100644 --- a/src/wxss/css_tree_lib/lexical_checker.cpp +++ b/src/wxss/css_tree_lib/lexical_checker.cpp @@ -73,9 +73,12 @@ namespace WXSS return 1; } + int off_519A70_i = 0; // WXSS::CSSTreeLib::AttrDebugRule::MarkGood int off_519A70(std::shared_ptr& a1, std::shared_ptr &a2) { + off_519A70_i++; + int inner_off_519A70_i = off_519A70_i; auto v9 = a2->offset_168; std::shared_ptr la(new WXSS::CSSTreeLib::CSSSyntaxTree()); std::stringstream v26; @@ -486,9 +489,12 @@ namespace WXSS return 0; } + int off_519B00_i = 0; // WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood int off_519B00(std::shared_ptr& a1, std::shared_ptr &a2) { + off_519B00_i++; + int inner_off_519B00_i = off_519B00_i; std::string v14; std::string lit = a2->offset_24.GetLiteral(); if (lit.length()) @@ -517,7 +523,7 @@ namespace WXSS *str = "body"; a2->offset_132 = str; } - else if(strcasecmp(v14.data(), "f")) + else if(strcasecmp(v14.data(), "from")) { if(strcasecmp(v14.data(), "to")) { @@ -544,6 +550,10 @@ namespace WXSS } } a2->offset_116 = 1; + // if (lit == "from" && *a2->offset_132 == "wx-from") + // { + // int a = 0; + // } return 1; } else @@ -576,11 +586,14 @@ namespace WXSS return 1; } + int off_519B84_i = 0; /** * WXSS::CSSTreeLib::ChildRule::MarkGood */ int off_519B84(std::shared_ptr& a1, std::shared_ptr &a2) { + off_519B84_i++; + int inner_off_519B84_i = off_519B84_i; int v8 = 1; for (int j = 0; j < a2->offset_120.size(); j++) { @@ -602,13 +615,17 @@ namespace WXSS throw "not implement"; } + int off_519BB4_i = 0; /** * 00519BB4 - WXSS::CSSTreeLib::RuleChain::MarkGood * */ int off_519BB4(std::shared_ptr& a1, std::shared_ptr &a2) { + off_519BB4_i++; + int inner_off_519BB4_i = off_519BB4_i; int ret = 0; + // 注意:此处循环会第二次进入 WXSS::Token::GetLiteral(void)10 for (int i = 0; i < a1->offset_4_vecPtr.size(); i++) { auto cur = a1->offset_4_vecPtr[i]; @@ -775,7 +792,7 @@ namespace WXSS v29->offset_0 = off_519B84; std::shared_ptr v30(new WXSS::CSSTreeLib::Rule()); v30->offset_0 = off_519AE8; - v29->offset_4_vecPair.emplace_back("$ESV", v29); + v29->offset_4_vecPair.emplace_back("$ESV", v30); v24->offset_4_vecPtr.push_back(v29); v24->offset_4_vecPtr.push_back(v3); diff --git a/src/wxss/css_tree_lib/rule.cpp b/src/wxss/css_tree_lib/rule.cpp index dad3df6..f3ab2eb 100644 --- a/src/wxss/css_tree_lib/rule.cpp +++ b/src/wxss/css_tree_lib/rule.cpp @@ -6,11 +6,14 @@ namespace WXSS { namespace RuleDebugRule { + int InsertOriginSelectorInfo_i = 0; void InsertOriginSelectorInfo( std::shared_ptr & a1, int a2, std::shared_ptr & a3) { + InsertOriginSelectorInfo_i++; + int inner_InsertOriginSelectorInfo_i = InsertOriginSelectorInfo_i; std::string v13, v15; a1->RenderCode(v13, 0); @@ -20,6 +23,10 @@ namespace WXSS std::stringstream v17; v17 << ";wxcs_originclass: "; v17 << v13 << ";"; + // if (v13 == "from") + // { + // int a = 0; + // } std::shared_ptr lt(new WXSS::CSSTreeLib::CSSSyntaxTree()); lt->offset_0 = "FAKE_ATTR"; diff --git a/src/wxss/token.cpp b/src/wxss/token.cpp index a74a1a7..c7f4f7c 100644 --- a/src/wxss/token.cpp +++ b/src/wxss/token.cpp @@ -12,8 +12,11 @@ namespace WXSS { } + int GetLiteral_i = 0; std::string Token::GetLiteral(void) { + GetLiteral_i++; + int inner_GetLiteral_i = GetLiteral_i; // 9 if (this->offset_0 == 1) { return this->offset_28; diff --git a/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail.spec.ts b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail.spec.ts new file mode 100644 index 0000000..3778680 --- /dev/null +++ b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail.spec.ts @@ -0,0 +1,74 @@ +import assert from "assert"; +import path from "path"; +import linux from '../../../runner/linux' +import windows from '../../../runner/windows' +import * as fs from 'fs' +import { resolve } from 'path' + +describe("wcsc", function () { + describe("Raw: node output should equal with wine", function () { + // afterEach(function(){ + // if(this.currentTest.state === 'failed'){ + // console.error('failed', this.currentTest) + // } + // }) + it("case1", async function () { + const configPath = resolve(__dirname, './tdesign-miniprogram-starter-retail/case1-cmd.txt') + const projectPath = path.resolve( + __dirname, + "../../../projects/tdesign-miniprogram-starter-retail" + ); + const args = [ + "--config-path", + configPath, + ]; + const w = await windows.wcsc(args, projectPath); + const n = await linux.wcsc(args, projectPath); + const storagePath = path.resolve( + __dirname, + `tdesign-miniprogram-starter-retail/${this.test?.title}` + ); + try { + fs.mkdirSync(storagePath, { recursive: true }); + } catch (error) {} + fs.writeFileSync( + `${storagePath}/wine-output.js`, + w + ); + fs.writeFileSync( + `${storagePath}/node-output.js`, + n + ); + assert.equal(w, n); + }); + it("case2", async function () { + const configPath = resolve(__dirname, './tdesign-miniprogram-starter-retail/case2-cmd.txt') + const projectPath = path.resolve( + __dirname, + "../../../projects/tdesign-miniprogram-starter-retail" + ); + const args = [ + "--config-path", + configPath, + ]; + const w = await windows.wcsc(args, projectPath); + const n = await linux.wcsc(args, projectPath); + const storagePath = path.resolve( + __dirname, + `tdesign-miniprogram-starter-retail/${this.test?.title}` + ); + try { + fs.mkdirSync(storagePath, { recursive: true }); + } catch (error) {} + fs.writeFileSync( + `${storagePath}/wine-output.js`, + w + ); + fs.writeFileSync( + `${storagePath}/node-output.js`, + n + ); + assert.equal(w, n); + }); + }); +}); diff --git a/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case1-cmd.txt b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case1-cmd.txt new file mode 100644 index 0000000..5ea94c7 --- /dev/null +++ b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case1-cmd.txt @@ -0,0 +1,167 @@ +-db +-pc +144 +./pages/home/home.wxss +./pages/usercenter/index.wxss +./pages/usercenter/person-info/index.wxss +./pages/usercenter/address/list/index.wxss +./pages/usercenter/address/edit/index.wxss +./pages/goods/list/index.wxss +./pages/goods/details/index.wxss +./pages/goods/category/index.wxss +./pages/goods/search/index.wxss +./pages/goods/result/index.wxss +./pages/cart/index.wxss +./pages/order/order-confirm/index.wxss +./pages/order/receipt/index.wxss +./pages/order/pay-result/index.wxss +./pages/order/order-list/index.wxss +./pages/order/order-detail/index.wxss +./pages/goods/comments/index.wxss +./pages/order/apply-service/index.wxss +./pages/order/after-service-list/index.wxss +./pages/order/after-service-detail/index.wxss +./pages/goods/comments/create/index.wxss +./pages/coupon/coupon-list/index.wxss +./pages/coupon/coupon-detail/index.wxss +./pages/coupon/coupon-activity-goods/index.wxss +./pages/promotion-detail/index.wxss +./pages/order/fill-tracking-no/index.wxss +./pages/order/delivery-detail/index.wxss +./pages/order/invoice/index.wxss +./pages/usercenter/name-edit/index.wxss +./components/filter/index.wxss +./components/filter-popup/index.wxss +./components/goods-card/index.wxss +./components/goods-list/index.wxss +./components/load-more/index.wxss +./components/loading-content/index.wxss +./components/price/index.wxss +./components/swipeout/index.wxss +./components/webp-image/index.wxss +./custom-tab-bar/index.wxss +./miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxss +./miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxss +./miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxss +./miniprogram_npm/tdesign-miniprogram/back-top/back-top.wxss +./miniprogram_npm/tdesign-miniprogram/badge/badge.wxss +./miniprogram_npm/tdesign-miniprogram/button/button.wxss +./miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxss +./miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxss +./miniprogram_npm/tdesign-miniprogram/cell/cell.wxss +./miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxss +./miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxss +./miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxss +./miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxss +./miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxss +./miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxss +./miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxss +./miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxss +./miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxss +./miniprogram_npm/tdesign-miniprogram/divider/divider.wxss +./miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxss +./miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxss +./miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxss +./miniprogram_npm/tdesign-miniprogram/empty/empty.wxss +./miniprogram_npm/tdesign-miniprogram/fab/fab.wxss +./miniprogram_npm/tdesign-miniprogram/footer/footer.wxss +./miniprogram_npm/tdesign-miniprogram/grid/grid.wxss +./miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxss +./miniprogram_npm/tdesign-miniprogram/icon/icon.wxss +./miniprogram_npm/tdesign-miniprogram/image/image.wxss +./miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.wxss +./miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxss +./miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxss +./miniprogram_npm/tdesign-miniprogram/input/input.wxss +./miniprogram_npm/tdesign-miniprogram/link/link.wxss +./miniprogram_npm/tdesign-miniprogram/loading/loading.wxss +./miniprogram_npm/tdesign-miniprogram/message/message.wxss +./miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxss +./miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxss +./miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxss +./miniprogram_npm/tdesign-miniprogram/picker/picker.wxss +./miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxss +./miniprogram_npm/tdesign-miniprogram/popup/popup.wxss +./miniprogram_npm/tdesign-miniprogram/progress/progress.wxss +./miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxss +./miniprogram_npm/tdesign-miniprogram/radio/radio.wxss +./miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxss +./miniprogram_npm/tdesign-miniprogram/rate/rate.wxss +./miniprogram_npm/tdesign-miniprogram/result/result.wxss +./miniprogram_npm/tdesign-miniprogram/search/search.wxss +./miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxss +./miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxss +./miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxss +./miniprogram_npm/tdesign-miniprogram/slider/slider.wxss +./miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxss +./miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxss +./miniprogram_npm/tdesign-miniprogram/steps/steps.wxss +./miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxss +./miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxss +./miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxss +./miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxss +./miniprogram_npm/tdesign-miniprogram/switch/switch.wxss +./miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxss +./miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxss +./miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxss +./miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxss +./miniprogram_npm/tdesign-miniprogram/tag/tag.wxss +./miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxss +./miniprogram_npm/tdesign-miniprogram/toast/toast.wxss +./miniprogram_npm/tdesign-miniprogram/transition/transition.wxss +./miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxss +./miniprogram_npm/tdesign-miniprogram/upload/upload.wxss +./pages/cart/components/cart-bar/index.wxss +./pages/cart/components/cart-empty/index.wxss +./pages/cart/components/cart-group/index.wxss +./pages/cart/components/goods-card/index.wxss +./pages/cart/components/specs-popup/index.wxss +./pages/coupon/components/coupon-card/index.wxss +./pages/coupon/components/floating-button/index.wxss +./pages/coupon/components/ui-coupon-card/index.wxss +./pages/goods/category/components/goods-category/index.wxss +./pages/goods/category/components/goods-category/components/c-sidebar/index.wxss +./pages/goods/category/components/goods-category/components/c-sidebar/c-sidebar-item/index.wxss +./pages/goods/category/components/goods-category/components/c-tabbar/index.wxss +./pages/goods/category/components/goods-category/components/c-tabbar/c-tabbar-more/index.wxss +./pages/goods/comments/components/comments-card/index.wxss +./pages/goods/comments/components/comments-card/components/images-videos/index.wxss +./pages/goods/comments/components/comments-card/components/my-video/index.wxss +./pages/goods/details/components/buy-bar/index.wxss +./pages/goods/details/components/goods-specs-popup/index.wxss +./pages/goods/details/components/promotion-popup/index.wxss +./pages/order/components/after-service-button-bar/index.wxss +./pages/order/components/customer-service/index.wxss +./pages/order/components/goods-card/index.wxss +./pages/order/components/noGoods/noGoods.wxss +./pages/order/components/order-button-bar/index.wxss +./pages/order/components/order-card/index.wxss +./pages/order/components/reason-sheet/index.wxss +./pages/order/components/selectCoupons/selectCoupons.wxss +./pages/order/components/specs-goods-card/index.wxss +./pages/order/order-confirm/components/address-card/index.wxss +./pages/usercenter/components/order-group/index.wxss +./pages/usercenter/components/t-location/index.wxss +./pages/usercenter/components/ui-address-item/index.wxss +./pages/usercenter/components/ui-select-picker/index.wxss +./pages/usercenter/components/user-center-card/index.wxss +./app.wxss +./miniprogram_npm/tdesign-miniprogram/common/index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/base.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_clearfix.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_cursor.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_ellipsis.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_hairline.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/theme/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_animation.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_float.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/_variables.wxss +./style/cart-group.wxss +./style/global.wxss +./style/goodsList.wxss +./style/iconfont.wxss +./style/theme.wxss +-ll \ No newline at end of file diff --git a/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case2-cmd.txt b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case2-cmd.txt new file mode 100644 index 0000000..39940a8 --- /dev/null +++ b/test/spec/wcsc/raw/tdesign-miniprogram-starter-retail/case2-cmd.txt @@ -0,0 +1,166 @@ +-db +-pc +144 +./pages/home/home.wxss +./pages/usercenter/index.wxss +./pages/usercenter/person-info/index.wxss +./pages/usercenter/address/list/index.wxss +./pages/usercenter/address/edit/index.wxss +./pages/goods/list/index.wxss +./pages/goods/details/index.wxss +./pages/goods/category/index.wxss +./pages/goods/search/index.wxss +./pages/goods/result/index.wxss +./pages/cart/index.wxss +./pages/order/order-confirm/index.wxss +./pages/order/receipt/index.wxss +./pages/order/pay-result/index.wxss +./pages/order/order-list/index.wxss +./pages/order/order-detail/index.wxss +./pages/goods/comments/index.wxss +./pages/order/apply-service/index.wxss +./pages/order/after-service-list/index.wxss +./pages/order/after-service-detail/index.wxss +./pages/goods/comments/create/index.wxss +./pages/coupon/coupon-list/index.wxss +./pages/coupon/coupon-detail/index.wxss +./pages/coupon/coupon-activity-goods/index.wxss +./pages/promotion-detail/index.wxss +./pages/order/fill-tracking-no/index.wxss +./pages/order/delivery-detail/index.wxss +./pages/order/invoice/index.wxss +./pages/usercenter/name-edit/index.wxss +./components/filter/index.wxss +./components/filter-popup/index.wxss +./components/goods-card/index.wxss +./components/goods-list/index.wxss +./components/load-more/index.wxss +./components/loading-content/index.wxss +./components/price/index.wxss +./components/swipeout/index.wxss +./components/webp-image/index.wxss +./custom-tab-bar/index.wxss +./miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxss +./miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxss +./miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxss +./miniprogram_npm/tdesign-miniprogram/back-top/back-top.wxss +./miniprogram_npm/tdesign-miniprogram/badge/badge.wxss +./miniprogram_npm/tdesign-miniprogram/button/button.wxss +./miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxss +./miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxss +./miniprogram_npm/tdesign-miniprogram/cell/cell.wxss +./miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxss +./miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxss +./miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxss +./miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxss +./miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxss +./miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxss +./miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxss +./miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxss +./miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxss +./miniprogram_npm/tdesign-miniprogram/divider/divider.wxss +./miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxss +./miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxss +./miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxss +./miniprogram_npm/tdesign-miniprogram/empty/empty.wxss +./miniprogram_npm/tdesign-miniprogram/fab/fab.wxss +./miniprogram_npm/tdesign-miniprogram/footer/footer.wxss +./miniprogram_npm/tdesign-miniprogram/grid/grid.wxss +./miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxss +./miniprogram_npm/tdesign-miniprogram/icon/icon.wxss +./miniprogram_npm/tdesign-miniprogram/image/image.wxss +./miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.wxss +./miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxss +./miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxss +./miniprogram_npm/tdesign-miniprogram/input/input.wxss +./miniprogram_npm/tdesign-miniprogram/link/link.wxss +./miniprogram_npm/tdesign-miniprogram/loading/loading.wxss +./miniprogram_npm/tdesign-miniprogram/message/message.wxss +./miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxss +./miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxss +./miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxss +./miniprogram_npm/tdesign-miniprogram/picker/picker.wxss +./miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxss +./miniprogram_npm/tdesign-miniprogram/popup/popup.wxss +./miniprogram_npm/tdesign-miniprogram/progress/progress.wxss +./miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxss +./miniprogram_npm/tdesign-miniprogram/radio/radio.wxss +./miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxss +./miniprogram_npm/tdesign-miniprogram/rate/rate.wxss +./miniprogram_npm/tdesign-miniprogram/result/result.wxss +./miniprogram_npm/tdesign-miniprogram/search/search.wxss +./miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxss +./miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxss +./miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxss +./miniprogram_npm/tdesign-miniprogram/slider/slider.wxss +./miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxss +./miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxss +./miniprogram_npm/tdesign-miniprogram/steps/steps.wxss +./miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxss +./miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxss +./miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxss +./miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxss +./miniprogram_npm/tdesign-miniprogram/switch/switch.wxss +./miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxss +./miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxss +./miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxss +./miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxss +./miniprogram_npm/tdesign-miniprogram/tag/tag.wxss +./miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxss +./miniprogram_npm/tdesign-miniprogram/toast/toast.wxss +./miniprogram_npm/tdesign-miniprogram/transition/transition.wxss +./miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxss +./miniprogram_npm/tdesign-miniprogram/upload/upload.wxss +./pages/cart/components/cart-bar/index.wxss +./pages/cart/components/cart-empty/index.wxss +./pages/cart/components/cart-group/index.wxss +./pages/cart/components/goods-card/index.wxss +./pages/cart/components/specs-popup/index.wxss +./pages/coupon/components/coupon-card/index.wxss +./pages/coupon/components/floating-button/index.wxss +./pages/coupon/components/ui-coupon-card/index.wxss +./pages/goods/category/components/goods-category/index.wxss +./pages/goods/category/components/goods-category/components/c-sidebar/index.wxss +./pages/goods/category/components/goods-category/components/c-sidebar/c-sidebar-item/index.wxss +./pages/goods/category/components/goods-category/components/c-tabbar/index.wxss +./pages/goods/category/components/goods-category/components/c-tabbar/c-tabbar-more/index.wxss +./pages/goods/comments/components/comments-card/index.wxss +./pages/goods/comments/components/comments-card/components/images-videos/index.wxss +./pages/goods/comments/components/comments-card/components/my-video/index.wxss +./pages/goods/details/components/buy-bar/index.wxss +./pages/goods/details/components/goods-specs-popup/index.wxss +./pages/goods/details/components/promotion-popup/index.wxss +./pages/order/components/after-service-button-bar/index.wxss +./pages/order/components/customer-service/index.wxss +./pages/order/components/goods-card/index.wxss +./pages/order/components/noGoods/noGoods.wxss +./pages/order/components/order-button-bar/index.wxss +./pages/order/components/order-card/index.wxss +./pages/order/components/reason-sheet/index.wxss +./pages/order/components/selectCoupons/selectCoupons.wxss +./pages/order/components/specs-goods-card/index.wxss +./pages/order/order-confirm/components/address-card/index.wxss +./pages/usercenter/components/order-group/index.wxss +./pages/usercenter/components/t-location/index.wxss +./pages/usercenter/components/ui-address-item/index.wxss +./pages/usercenter/components/ui-select-picker/index.wxss +./pages/usercenter/components/user-center-card/index.wxss +./app.wxss +./miniprogram_npm/tdesign-miniprogram/common/index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/base.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_clearfix.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_cursor.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_ellipsis.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_hairline.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/mixins/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/theme/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_animation.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_float.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/utilities/_index.wxss +./miniprogram_npm/tdesign-miniprogram/common/style/_variables.wxss +./style/cart-group.wxss +./style/global.wxss +./style/goodsList.wxss +./style/iconfont.wxss +./style/theme.wxss \ No newline at end of file diff --git a/test/wcsc.disassembly.cpp b/test/wcsc.disassembly.cpp index dfe3adb..8fdc919 100644 --- a/test/wcsc.disassembly.cpp +++ b/test/wcsc.disassembly.cpp @@ -10394,6 +10394,7 @@ int __cdecl WXML::Rewrite::RewriteImg(int a1, unsigned int **a2, int *a3, int a4 if ( !std::string::compare((int)&Str1[(_DWORD)v21 + 4], (char *)off_50F1C8) // "url" && !std::string::compare((int)&Str1[(_DWORD)v21 + 32], "(") ) { + // v24怎么填数据进去的? std::string::basic_string((void **)&v24, (char *)&byte_50F1AA); // '\0' while ( -1227133513 * ((v22 - v21) >> 2) > ++lpuexcpt ) { @@ -46251,7 +46252,7 @@ char __stdcall WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood( { if ( *((_BYTE *)lpuexcpt + (_DWORD)v17) == '.'/*46*/ && (unsigned int)lpuexcpt + 1 < v18 - && (unsigned int)(*((char *)lpuexcpt + (_DWORD)v17 + 1) - 48) > 9 ) + && (unsigned int)(*((char *)lpuexcpt + (_DWORD)v17 + 1) - '0'/*48*/) > 9 ) { std::string::operator+=(&v14, ".%%HERESUFFIX%%"); } @@ -46281,7 +46282,7 @@ char __stdcall WXSS::CSSTreeLib::RewriteSelectorRule::MarkGood( (volatile signed __int32 **)&v20); std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count(&v21); } - else if ( __stricmp(String1[0], asc_50E043) ) // "f" + else if ( __stricmp(String1[0], asc_50E043) ) // "from" { if ( __stricmp(String1[0], "to") ) { @@ -46582,6 +46583,7 @@ char __userpurge WXSS::CSSTreeLib::ChildRule::MarkGood@( { v6 = *(_DWORD *)(*((_DWORD *)this + 30) + 8 * v3); if ( std::operator==(i, v6) ) + // i => a1->offset_4 v8 &= (*(int (__thiscall **)(_DWORD, int))(**(_DWORD **)(i + 24) + 8))(*(_DWORD *)(i + 24), v6); } ++v3; diff --git a/test/wcsc.sh b/test/wcsc.sh index 1b68899..b56aec4 100644 --- a/test/wcsc.sh +++ b/test/wcsc.sh @@ -2,7 +2,7 @@ root_dir=$(cd `dirname $0`/.. && pwd -P) -cd /mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram +cd /mnt/d/Work/WeChatProjects/tdesign-miniprogram-starter-retail # list="cmd1 cmd2" # for cmd in $list; @@ -11,6 +11,10 @@ cd /mnt/d/Work/WeChatProjects/miniprogram-demo/miniprogram # /root/github/wx-compiler/build/wcc "--config-path" "/mnt/d/Work/disassembly/wcc-exec/wcc/config/$cmd.txt" > /root/github/wx-compiler/test/wcc_linux.json # /mnt/d/Work/disassembly/wcc-exec/wcc/wcc.exe "--config-path" "d:/Work/disassembly/wcc-exec/wcc/config/$cmd.txt" > /root/github/wx-compiler/test/wcc_win.json # done; -filename="ll2.txt" -/root/github/wx-compiler/build/wcsc "--config-path" "/mnt/d/Work/disassembly/wcc-exec/wcsc/config/$filename" > /root/github/wx-compiler/test/wcsc_linux.json -/mnt/d/Work/disassembly/wcc-exec/wcsc/wcsc.exe "--config-path" "d:/Work/disassembly/wcc-exec/wcsc/config/$filename" > /root/github/wx-compiler/test/wcsc_win.json +filename="WeChatProjects/case4-cmd.txt" + +echo "linux:" +/root/github/wx-compiler/build/wcsc "--config-path" "/mnt/d/Work/$filename" > /root/github/wx-compiler/test/wcsc_linux.json + +echo "windows:" +/mnt/d/Work/disassembly/wcc-exec/wcsc/wcsc.exe "--config-path" "d:/Work/$filename" > /root/github/wx-compiler/test/wcsc_win.json