From a5f5cad006993f4e5bec2e11783d38f5b9dc1d6c Mon Sep 17 00:00:00 2001
From: zzz <zzz@i2pmail.org>
Date: Wed, 19 Mar 2025 09:21:27 -0400
Subject: [PATCH] Console: Reduce memory usage in BanlistRenderer

OOM seen on one box
---
 .../src/net/i2p/router/web/helpers/BanlistRenderer.java     | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/apps/routerconsole/java/src/net/i2p/router/web/helpers/BanlistRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/helpers/BanlistRenderer.java
index 0607c1650d..39443cb40c 100644
--- a/apps/routerconsole/java/src/net/i2p/router/web/helpers/BanlistRenderer.java
+++ b/apps/routerconsole/java/src/net/i2p/router/web/helpers/BanlistRenderer.java
@@ -32,7 +32,7 @@ class BanlistRenderer {
     }
 
     public void renderStatusHTML(Writer out) throws IOException {
-        StringBuilder buf = new StringBuilder(1024);
+        StringBuilder buf = new StringBuilder(2048);
         Map<Hash, Banlist.Entry> entries = new TreeMap<Hash, Banlist.Entry>(HashComparator.getInstance());
         
         entries.putAll(_context.banlist().getEntries());
@@ -79,6 +79,10 @@ class BanlistRenderer {
                    .append("#unsh\" title=\"").append(unban).append("\">[").append(unban).append("]</a>");
             }
             buf.append("</li>\n");
+            if (buf.length() > 1024) {
+                out.append(buf);
+                buf.setLength(0);
+            }
         }
         buf.append("</ul>\n");
         out.append(buf);
-- 
GitLab