From a1edc650f13ea145cef654e2a2f4633159fb7914 Mon Sep 17 00:00:00 2001
From: "Rob Swindell (on Debian Linux)" <rob@synchro.net>
Date: Fri, 25 Apr 2025 10:00:32 -0700
Subject: [PATCH] Throw an exception when rendered line would exceed screen
 width

since we don't support line wrapping or truncation (yet).
---
 exec/load/tdfonts_lib.js | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/exec/load/tdfonts_lib.js b/exec/load/tdfonts_lib.js
index 8fc24aac47..d2c46f8f46 100755
--- a/exec/load/tdfonts_lib.js
+++ b/exec/load/tdfonts_lib.js
@@ -397,6 +397,10 @@ function output(str, font) {
         padding = Math.floor(width - (linewidth + padding));
     }
 
+	linewidth += padding;
+	if(linewidth > width)
+		throw new Error(format("Rendered line width (%u) > screen width (%u)", linewidth, width));
+
     // Print each row of the font text
     for (var i = 0; i < maxheight; i++) {
         // Print padding spaces
-- 
GitLab