1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-09-15 18:57:08 +00:00

Fix seg fault if popping from empty stack (L-system trees)

See: https://github.com/minetest/minetest/issues/1525

Background
Wuzzy2: If you attempt to spawn a L-system tree with minetest.spawn_tree, you can make Minetest crash if it is attempted to pop an empty stack.

ShadowNinja: This shouldn't cause a segmentation fault, but it should throw a Lua error

Commit Description
This commit throws a Lua error instead of causing a segmentation fault. The server will still "crash" but will include a Lua backtrace.

L-Systems fix randomness
Unless a random seed is provided (via Lua treedef) seed the PRNG with a different seed for each tree
Resolves: https://github.com/minetest/minetest/issues/1469

Fix l-system crash when treedef random_level not set by Lua
This commit is contained in:
Craig Robbins 2014-08-07 15:39:12 +10:00 committed by RealBadAngel
parent 996ea60642
commit f33d31693e
4 changed files with 45 additions and 10 deletions

View file

@ -2208,7 +2208,7 @@ treedef={
thin_branches, - boolean true -> use thin (1 node) branches
fruit, - string fruit node name
fruit_chance, - num chance (0-100) to replace leaves with fruit node
seed, - num random seed
seed, - num random seed; if no seed is provided, the engine will create one
}
Key for Special L-System Symbols used in Axioms