diff --git a/exec/load/newsutil.js b/exec/load/newsutil.js
index 7d64087e6bcd67af512dc4bede719aad47cf68ec..091cd049197b73879e59a4edcaed7046ba33c20c 100644
--- a/exec/load/newsutil.js
+++ b/exec/load/newsutil.js
@@ -7,7 +7,7 @@
 
 require("mailutil.js", 'mail_get_name');
 require("smbdefs.js", 'RFC822HEADER');
-					
+
 function write_news_header(hdr,writeln)
 {
 	/* Required header fields */
@@ -67,7 +67,22 @@ function write_news_header(hdr,writeln)
 		}
 	}
 	if(content_type==undefined) {
-		var charset = hdr.text_charset || (hdr.is_utf8 ? "UTF-8" : "IBM437");
+		var charset = hdr.text_charset;
+		if(!charset) {
+			if(hdr.is_utf8)
+				charset = "UTF-8";
+			else switch(hdr.ftn_charset) {
+				case "ASCII 1":
+					charset = "US-ASCII";
+					break;
+				case "CP866 2":
+					charset = "KOI8-R";
+					break;
+				default:
+					charset = "IBM437";
+					break;
+			}
+		}
 		writeln("Content-Type: text/plain; charset=" + charset);
 		writeln("Content-Transfer-Encoding: 8bit");
 	}