diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c
index f586158570ec40471b9c636cef7d3653ac6239e4..47d5d2fb47a9cc51d60157fe6773d68fca65d62c 100644
--- a/src/backend/commands/vacuum.c
+++ b/src/backend/commands/vacuum.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.61 1998/02/03 21:57:27 momjian Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/commands/vacuum.c,v 1.62 1998/02/25 23:40:32 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1083,23 +1083,19 @@ vc_rpfheap(VRelStats *vacrelstats, Relation onerel,
 					/*
 					 * If no one tuple can't be added to this page -
 					 * remove page from Fvpl. - vadim 11/27/96
+					 *
+					 * But we can't remove last page - this is our
+					 * "show-stopper" !!!	- vadim 02/25/98
 					 */
-					if (!vc_enough_space(ToVpd, vacrelstats->min_tlen))
+					if (ToVpd != Fvplast && 
+						!vc_enough_space(ToVpd, vacrelstats->min_tlen))
 					{
-						if (ToVpd != Fvplast)
-						{
-							Assert(Fnpages > ToVpI + 1);
-							memmove(Fvpl->vpl_pgdesc + ToVpI,
-									Fvpl->vpl_pgdesc + ToVpI + 1,
-							sizeof(VPageDescr *) * (Fnpages - ToVpI - 1));
-						}
-						Assert(Fnpages >= 1);
+						Assert(Fnpages > ToVpI + 1);
+						memmove(Fvpl->vpl_pgdesc + ToVpI,
+								Fvpl->vpl_pgdesc + ToVpI + 1,
+								sizeof(VPageDescr *) * (Fnpages - ToVpI - 1));
 						Fnpages--;
-						if (Fnpages == 0)
-							break;
-						/* get prev reapped page from Fvpl */
-						Fvplast = Fvpl->vpl_pgdesc[Fnpages - 1];
-						Fblklast = Fvplast->vpd_blkno;
+						Assert (Fvplast == Fvpl->vpl_pgdesc[Fnpages - 1]);
 					}
 				}
 				for (i = 0; i < Fnpages; i++)