diff --git a/src/sbbs3/wordwrap.c b/src/sbbs3/wordwrap.c
index caa7aa440c00fd2aa5fc19f8791ef719dd7dbe02..55d85e9dde257a11364bb1cf344dc3491533d106 100644
--- a/src/sbbs3/wordwrap.c
+++ b/src/sbbs3/wordwrap.c
@@ -514,7 +514,7 @@ static char *wrap_paragraphs(struct paragraph *paragraph, int outlen, BOOL handl
 				word_len = get_word_len(inp+ws_len.bytes, -1);
 				// Do we need to chop a long word?
 				if (word_len.len > (outlen - prefix_cols))
-					word_len = get_word_len(inp + ws_len.bytes, outlen - outcol);
+					word_len = get_word_len(inp + ws_len.bytes, outlen - ws_len.bytes - outcol);
 				if (outcol + ws_len.len + word_len.len > outlen) {
 					inp += ws_len.bytes;
 					break;