Index: /trunk/glueforge/templates/psdb/alloc.tt
===================================================================
--- /trunk/glueforge/templates/psdb/alloc.tt	(revision 4171)
+++ /trunk/glueforge/templates/psdb/alloc.tt	(revision 4172)
@@ -1,4 +1,6 @@
 [% USE format -%]
 [% indented = format('%-15s %s') -%]
+static void [% object_name %]Free([% object_name %] *object);
+
 [% object_name %] *[% object_name %]Alloc(
     [%- SET i = 0 -%]
@@ -18,4 +20,5 @@
 
     object = psAlloc(sizeof([% object_name %]));
+    psMemSetDeallocator(object, (psFreeFcn)[% object_name %]Free);
 
 [% FOREACH item = columns -%]
@@ -25,2 +28,11 @@
     return object;
 }
+
+static void [% object_name %]Free([% object_name %] *object)
+{
+[% FOREACH item = columns -%]
+[% IF item.type == "STR" -%]
+    psFree(object->[% item.name %]);
+[% END -%]
+[% END -%]
+}
