diff --git a/lib/python/SearchIndex/Trie.c b/lib/python/SearchIndex/Trie.c
index ac40a63bd15e34037c46e48a0519a98fd593f231..70bbacd4b16779e1767ee2dbdec62c3836567d03 100644
--- a/lib/python/SearchIndex/Trie.c
+++ b/lib/python/SearchIndex/Trie.c
@@ -53,7 +53,7 @@
 
 static char Trie_module_documentation[] = 
 ""
-"\n$Id: Trie.c,v 1.11 1997/07/17 14:50:57 jim Exp $"
+"\n$Id: Trie.c,v 1.12 1997/07/18 14:43:24 jim Exp $"
 ;
 
 
@@ -452,9 +452,14 @@ Trie_cget(TrieObject *self, char *word, PyObject *oword)
       PER_USE_OR_RETURN(self, NULL);
 
     }
-  if(! self->value) return PER_RETURN(self, NotFoundError(oword));
+  if(! self->value)
+    {
+      Py_DECREF(self);
+      return PER_RETURN(self, NotFoundError(oword));
+    }
   bin=self->value;
   Py_INCREF(bin);
+  Py_DECREF(self);
   return PER_RETURN(self, bin);
 
 not_found:
@@ -653,6 +658,7 @@ Trie_dealloc(TrieObject *self)
 {
   Py_XDECREF(self->bins);
   Py_XDECREF(self->value);
+  PER_DEL(self);
   PyMem_DEL(self);
   /*printf("d");*/
 }
@@ -741,7 +747,7 @@ void
 initTrie()
 {
   PyObject *m, *d;
-  char *rev="$Revision: 1.11 $";
+  char *rev="$Revision: 1.12 $";
 
   UNLESS(ExtensionClassImported) return;
 
@@ -781,6 +787,10 @@ initTrie()
  Revision Log:
 
   $Log: Trie.c,v $
+  Revision 1.12  1997/07/18 14:43:24  jim
+  Added cPersistent, PER_DEL invocation to destructor.
+  Fixed memory leaks in cset.
+
   Revision 1.11  1997/07/17 14:50:57  jim
   Got  rid of some unreferenced vars.