diff --git a/src/backend/utils/fmgr/dfmgr.c b/src/backend/utils/fmgr/dfmgr.c
index 171f269127d11f79a8136a977b11e4424933d634..a69d20a047694c84e7393fd62a91ddc6f477ddf1 100644
--- a/src/backend/utils/fmgr/dfmgr.c
+++ b/src/backend/utils/fmgr/dfmgr.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.33 1999/09/28 04:34:46 momjian Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/utils/fmgr/dfmgr.c,v 1.34 1999/09/28 11:27:13 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -103,7 +103,7 @@ fmgr_dynamic(Oid procedureId, int *pronargs)
 	}
 	else if (!PointerIsValid(prosrcattr))
 	{							/* pg_proc must be messed up! */
-		heap_close(rel);
+		heap_close(rel, AccessShareLock);
 		elog(ERROR, "fmgr: Could not extract prosrc for %u from %s",
 			 procedureId, ProcedureRelationName);
 		return (func_ptr) NULL;