From c50406f8a29752642c7ddd7d200bc88a0b00639a Mon Sep 17 00:00:00 2001
From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54>
Date: Sun, 5 Sep 2010 20:04:41 +0000
Subject: [PATCH] Fix

git-svn-id: http://svn.net-core.org/repos/t-engine4@1151 51575b47-30f0-44d4-a5cc-537603b46e54
---
 game/engines/default/engine/class.lua | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/game/engines/default/engine/class.lua b/game/engines/default/engine/class.lua
index af59b8d9cf..bb01ed372b 100644
--- a/game/engines/default/engine/class.lua
+++ b/game/engines/default/engine/class.lua
@@ -115,18 +115,17 @@ local function clonerecursfull(clonetable, d, allow_cloned)
 
 	for k, e in pairs(d) do
 		local nk, ne = k, e
-
 		if clonetable[k] then nk = clonetable[k]
 		elseif type(k) == "table" then nk = clonerecursfull(clonetable, k)
 		end
 
 		if clonetable[e] then ne = clonetable[e]
-		elseif type(e) == "table" then ne = clonerecursfull(clonetable, e)
+		elseif type(e) == "table" and (type(k) ~= "string" or k ~= "__threads") then ne = clonerecursfull(clonetable, e)
 		end
 		n[nk] = ne
 	end
 	setmetatable(n, getmetatable(d))
-	if n.cloned then n:cloned(d) end
+	if n.cloned and n.__CLASSNAME then n:cloned(d) end
 	return n
 end
 
-- 
GitLab