diff --git a/src/modules/Parser/html.c b/src/modules/Parser/html.c
index 8b2779e25378e1db98e022ab25e1d0b8ecf3545f..fa69563ac181450f85b2266bd23e8b81fdec0918 100644
--- a/src/modules/Parser/html.c
+++ b/src/modules/Parser/html.c
@@ -2097,7 +2097,13 @@ in_quote_cont:
       while (1) {
 	res=scan_forward(feed=*destp,c=d_p[0]+1,destp,d_p,
 			 LOOK_FOR_END (this)[i], NUM_LOOK_FOR_END (this)[i]);
-	if (what == SCAN_ARG_PUSH) n += low_push_feed_range(feed,c,*destp,*d_p);
+	if (what == SCAN_ARG_PUSH) {
+          n += low_push_feed_range(feed,c,*destp,*d_p);
+          if (n > 20) {
+            f_add(n);
+            n = 1;
+          }
+        }
 
 	if (!res) {
 	  if (!finished)