diff --git a/Python/compile.c b/Python/compile.c
index f2d424b..7eac91a 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -3912,8 +3912,10 @@
 		PyErr_SetString(PyExc_SystemError, "lost syntax error");
 	}
  exit:
-	if (base == NULL)
+	if (base == NULL) {
 		PySymtable_Free(sc.c_symtable);
+		sc.c_symtable = NULL;
+	}
 	com_free(&sc);
 	return co;
 }
@@ -4193,6 +4195,7 @@
 {
 	Py_XDECREF(st->st_symbols);
 	Py_XDECREF(st->st_stack);
+	Py_XDECREF(st->st_cur);
 	PyMem_Free((void *)st);
 }
 
@@ -4359,10 +4362,11 @@
 		PySymtableEntry_New(st, name, type, lineno);
 	if (strcmp(name, TOP) == 0)
 		st->st_global = st->st_cur->ste_symbols;
-	if (prev)
+	if (prev && st->st_pass == 1) {
 		if (PyList_Append(prev->ste_children, 
 				  (PyObject *)st->st_cur) < 0)
 			st->st_errors++;
+	}
 }
 
 static int
diff --git a/Python/symtable.c b/Python/symtable.c
index 5dc0272..0d2e324 100644
--- a/Python/symtable.c
+++ b/Python/symtable.c
@@ -13,8 +13,10 @@
 	if (k == NULL)
 		goto fail;
 	v = PyDict_GetItem(st->st_symbols, k);
-	if (v) /* XXX could check that name, type, lineno match */
-	    return v;
+	if (v) /* XXX could check that name, type, lineno match */ {
+		Py_INCREF(v);
+		return v;
+	}
 	
 	ste = (PySymtableEntryObject *)PyObject_New(PySymtableEntryObject,
 						    &PySymtableEntry_Type);
@@ -69,7 +71,7 @@
 
 	if (PyDict_SetItem(st->st_symbols, ste->ste_id, (PyObject *)ste) < 0)
 	    goto fail;
-
+	
 	return (PyObject *)ste;
  fail:
 	Py_XDECREF(ste);
