diff --git a/mods/default/functions.lua b/mods/default/functions.lua
index 3afaec880cb4511c8ed55b0640017c052d57aa6e..29506c40b8d5ad6aae4c87d278ccdc33e1e78cb2 100644
--- a/mods/default/functions.lua
+++ b/mods/default/functions.lua
@@ -257,9 +257,11 @@ minetest.register_globalstep(function(dtime)
 end)
 
 default.after_place_leaves = function(pos, placer, itemstack, pointed_thing)
-	local node = minetest.get_node(pos)
-	node.param2 = 1
-	minetest.set_node(pos, node)
+	if placer and not placer:get_player_control().sneak then
+		local node = minetest.get_node(pos)
+		node.param2 = 1
+		minetest.set_node(pos, node)
+	end
 end
 
 minetest.register_abm({