party/init.lua:338: attempt to concatenate local 'param3' (a nil value) #4064
Labels
No Label
1. kind/balancing
1. kind/breaking
1. kind/bug
1. kind/construction
1. kind/documentation
1. kind/enhancement
1. kind/griefing
1. kind/invalid
1. kind/meme
1. kind/node limit
1. kind/other
1. kind/protocol
2. prio/controversial
2. prio/critical
2. prio/elevated
2. prio/good first issue
2. prio/interesting
2. prio/low
3. source/art
3. source/client
3. source/engine
3. source/ingame
3. source/integration
3. source/lag
3. source/license
3. source/mod upstream
3. source/unknown
3. source/website
4. step/approved
4. step/at work
4. step/blocked
4. step/discussion
4. step/help wanted
4. step/needs confirmation
4. step/partially fixed
4. step/question
4. step/ready to deploy
4. step/ready to QA test
4. step/want approval
5. result/cannot reproduce
5. result/duplicate
5. result/fixed
5. result/maybe
5. result/wontfix
ugh/petz
ugh/QA main
ugh/QA NOK
ugh/QA OK
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: your-land/bugtracker#4064
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
2023-03-24 03:06:10: ERROR[Main]: ServerError: AsyncErr: Lua: Runtime error from mod 'party' in callback on_chat_message(): /home/mt/5.6.1/Minetest_live/bin/../mods/party/init.lua:338: attempt to concatenate local 'param3' (a nil value)
2023-03-24 03:06:10: ERROR[Main]: stack traceback:
2023-03-24 03:06:10: ERROR[Main]: /home/mt/5.6.1/Minetest_live/bin/../mods/party/init.lua:338: in function 'func'
2023-03-24 03:06:10: ERROR[Main]: ...inetest_live/bin/../builtin/profiler/instrumentation.lua:107: in function 'func'
2023-03-24 03:06:10: ERROR[Main]: /home/mt/5.6.1/Minetest_live/bin/../builtin/game/chat.lua:79: in function 'func'
2023-03-24 03:06:10: ERROR[Main]: ...inetest_live/bin/../builtin/profiler/instrumentation.lua:107: in function <...inetest_live/bin/../builtin/profiler/instrumentation.lua:100>
2023-03-24 03:06:10: ERROR[Main]: .../mt/5.6.1/Minetest_live/bin/../builtin/game/register.lua:431: in function <.../mt/5.6.1/Minetest_live/bin/../builtin/game/register.lua:417>
Fixed in
14952d0f61
@AliasAlreadyTaken looking at the quantity of nil checks i see you add, i feel like you're exhausted w/ how poorly defined the minetest API is. but this check in particular seems totally reasonable.
I don't understand ... ?
Is that a joke because I only added two? :D And because those nil checks are pure lua, they have not much to do with the MT API (which IS poorly designed, documented and censored due to rage.), rather with how the developer of the party mod evaluated the parameters that come from the user of the command.
The first nil check of line 337 avoids the crash - param3 is checked against nil nowhere, while param2 is. We must have been plain lucky noone ever executed the command in this fashion.
The second nil check of line 731 is a mere guess. The developer checks param3 against a string "nil" instead of nil, even though this param3 will hardly ever become string "nil" unless a user really adds "nil" to the /p command as third parameter. I just guessed the developer wanted to check against nil, instead of string "nil".
Or do I misunderstand and I should have done soemthing else instead?
this is live