diff --git a/top/top.c b/top/top.c
index 0b065ed..22a5de7 100644
--- a/top/top.c
+++ b/top/top.c
@@ -3642,7 +3642,10 @@ static int window_show (WIN_t *q, int wmax) {
    }
 
    i = q->begtask;
-   if (i >= Frame_maxtask) i = q->begtask = Frame_maxtask - 1;
+   if (i >= Frame_maxtask)
+      if (likely(Frame_maxtask > 1)) i = q->begtask = Frame_maxtask - 1;
+      else i = q->begtask = 0;
+ 
    lwin = 1;                                        // 1 for the column header
    wmax = winMIN(wmax, q->winlines + 1);            // ditto for winlines, too

