diff options
| author | 夕伽 <[email protected]> | 2018-09-06 11:13:47 +0800 |
|---|---|---|
| committer | 夕伽 <[email protected]> | 2018-09-06 11:13:47 +0800 |
| commit | e8af37c32549f54059f6e7635064c623b80c039c (patch) | |
| tree | 80010212671ba64ccf4482b9809787d690db1456 | |
| parent | 8d0d7c81b543c365411ad586a0cf0001edbaa7a3 (diff) | |
fix bug: remove item from table
| -rw-r--r-- | xmake/rules/winsdk/mfc/mfc.lua | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/xmake/rules/winsdk/mfc/mfc.lua b/xmake/rules/winsdk/mfc/mfc.lua index a5508a033..b51ab0733 100644 --- a/xmake/rules/winsdk/mfc/mfc.lua +++ b/xmake/rules/winsdk/mfc/mfc.lua @@ -25,10 +25,10 @@ -- remove exists md or mt function _mfc_remove_mt_md_flags(target, flagsname) local flags = table.wrap(target:get(flagsname)) - for key, flag in pairs(flags) do - flag = flag:lower():trim() + for i = #flags, 1, -1 do + flag = flags[i]:lower():trim() if flag:find("^[/%-]?mt[d]?$") or flag:find("^[/%-]?md[d]?$") then - flags[key] = nil + table.remove(flags, i) end end target:set(flagsname, flags) @@ -37,10 +37,10 @@ end -- remove exists settings function _mfc_remove_flags(target) local ldflags = table.wrap(target:get("ldflags")) - for key, ldflag in pairs(ldflags) do - ldflag = ldflag:lower():trim() + for i = #ldflags, 1, -1 do + ldflag = ldflags[i]:lower():trim() if ldflag:find("[/%-]subsystem:") then - ldflags[key] = nil + table.remove(ldflags, i) break end end @@ -48,10 +48,10 @@ function _mfc_remove_flags(target) -- remove defines MT MTd MD MDd local defines = table.wrap(target:get("defines")) - for key, define in pairs(defines) do - define = define:lower():trim() + for i = #defines, 1, -1 do + define = defines[i]:lower():trim() if define:find("^[/%-]?mt[d]?$") or define:find("^[/%-]?md[d]?$") then - defines[key] = nil + table.remove(defines, i) end end target:set("defines", defines) |
