diff --git a/game/thirdparty/ltn12.lua b/game/thirdparty/ltn12.lua
index b42689a34ab01703732510b295d6209e527f4446..55c3e346f3238465c639a6f1d3304d3552aa610e 100644
--- a/game/thirdparty/ltn12.lua
+++ b/game/thirdparty/ltn12.lua
@@ -38,6 +38,7 @@ end
 -- chains a bunch of filters together
 -- (thanks to Wim Couwenberg)
 function filter.chain(...)
+    local arg = {...}
     local n = table.getn(arg)
     local top, index = 1, 1
     local retry = ""
@@ -186,6 +187,7 @@ end
 -- other, as if they were concatenated
 -- (thanks to Wim Couwenberg)
 function source.cat(...)
+    local arg = {...}
     local src = table.remove(arg, 1)
     return function()
         while src do