diff --git a/src/backend/utils/mmgr/mcxt.c b/src/backend/utils/mmgr/mcxt.c index c5a2311bc5..6d68e30f7e 100644 --- a/src/backend/utils/mmgr/mcxt.c +++ b/src/backend/utils/mmgr/mcxt.c @@ -14,7 +14,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/mmgr/mcxt.c,v 1.54 2005/02/18 21:52:33 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/mmgr/mcxt.c,v 1.55 2005/05/14 23:16:29 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -123,7 +123,10 @@ MemoryContextReset(MemoryContext context) { AssertArg(MemoryContextIsValid(context)); - MemoryContextResetChildren(context); + /* save a function call in common case where there are no children */ + if (context->firstchild != NULL) + MemoryContextResetChildren(context); + (*context->methods->reset) (context); }