--- procps-3.2.5/top.h
+++ procps-3.2.5/top.h
@@ -132,6 +132,7 @@
 #define _PUFF(fmt,arg...)                               \
 do {                                                     \
    char _str[ROWBUFSIZ];                                   \
+   if (Pseudo_row >= Screen_rows-1) break;                   \
    int _len = 1 + snprintf(_str, sizeof(_str), fmt, ## arg);   \
    putp ( Batch ? _str :                                   \
    ({                                                 \
