Eliminate odd int to pointer conversion for sound indexes in lua

This commit is contained in:
Stephen E. Baker
2025-05-10 23:43:31 -04:00
parent 920cd3bb7e
commit 2759362606
2 changed files with 5 additions and 5 deletions

View File

@@ -1,6 +1,6 @@
---
# -bugprone-chained-comparion is needed for catch2 < v3.5.3
Checks: 'bugprone-*,-bugprone-assignment-in-if-condition,-bugprone-chained-comparison,-bugprone-easily-swappable-parameters,-bugprone-implicit-widening-of-multiplication-result,-bugprone-multi-level-implicit-pointer-conversion,-bugprone-narrowing-conversions,-bugprone-suspicious-enum-usage,-bugprone-switch-missing-default-case,clang-diagnostic-*,clang-analyzer-*,misc-throw-by-value-catch-by-reference,modernize-use-nullptr,modernize-use-equals-default,modernize-use-equals-delete,modernize-use-override,performance-*,-performance-enum-size,-performance-no-int-to-ptr'
# -bugprone-chained-comparison is needed for catch2 < v3.5.3
Checks: 'bugprone-*,-bugprone-assignment-in-if-condition,-bugprone-chained-comparison,-bugprone-easily-swappable-parameters,-bugprone-implicit-widening-of-multiplication-result,-bugprone-multi-level-implicit-pointer-conversion,-bugprone-narrowing-conversions,-bugprone-suspicious-enum-usage,-bugprone-switch-missing-default-case,clang-diagnostic-*,clang-analyzer-*,misc-throw-by-value-catch-by-reference,modernize-use-nullptr,modernize-use-equals-default,modernize-use-equals-delete,modernize-use-override,performance-*,-performance-enum-size'
WarningsAsErrors: '*'
HeaderFilterRegex: '/CorsixTH/Src/|/AnimView/|/common/'
FormatStyle: file

View File

@@ -103,8 +103,8 @@ size_t l_soundarc_checkidx(lua_State* L, int iArg, sound_archive* pArchive) {
lua_getfenv(L, 1);
lua_pushvalue(L, iArg);
lua_rawget(L, -2);
if (lua_type(L, -1) == LUA_TLIGHTUSERDATA) {
size_t iIndex = (size_t)lua_topointer(L, -1);
if (lua_type(L, -1) == LUA_TNUMBER) {
size_t iIndex = static_cast<size_t>(lua_tointeger(L, -1));
lua_pop(L, 2);
return iIndex;
}
@@ -114,7 +114,7 @@ size_t l_soundarc_checkidx(lua_State* L, int iArg, sound_archive* pArchive) {
if (ignorecase_cmp(sName, pArchive->get_sound_name(i)) == 0) {
lua_getfenv(L, 1);
lua_pushvalue(L, iArg);
lua_pushlightuserdata(L, (void*)i);
lua_pushinteger(L, static_cast<lua_Integer>(i));
lua_settable(L, -3);
lua_pop(L, 1);
return i;