diff runtime/worker.c @ 103:7428aa5d6ade

Compiler compiled by compiler sort of working
author Mike Pavone <pavone@retrodev.com>
date Wed, 11 Aug 2010 03:13:28 -0400
parents a844c623c7df
children
line wrap: on
line diff
--- a/runtime/worker.c	Tue Aug 10 20:55:52 2010 -0400
+++ b/runtime/worker.c	Wed Aug 11 03:13:28 2010 -0400
@@ -35,3 +35,30 @@
 	}
 }
 
+void internalworkercopy(object * obj)
+{
+	int32_t idx;
+	t_Worker * worker = (t_Worker *)obj;
+	object **params = (object **)(worker+1);
+	for(idx = 0; idx < worker->payload.Size; ++idx)
+	{
+		if(params[idx])
+		{
+			add_ref(params[idx]);
+		}
+	}
+}
+
+void internalworkercleanup(object * obj)
+{
+	int32_t idx;
+	t_Worker * worker = (t_Worker *)obj;
+	object **params = (object **)(worker+1);
+	for(idx = 0; idx < worker->payload.Size; ++idx)
+	{
+		if(params[idx])
+		{
+			release_ref(params[idx]);
+		}
+	}
+}