diff --git a/exec/xtrn_sec.js b/exec/xtrn_sec.js
index e2b7540d2160a126b4b5b3d9c4ac86d43b719aae..4bbdf6578b5827cabf273ecf5a84ff70885648a9 100644
--- a/exec/xtrn_sec.js
+++ b/exec/xtrn_sec.js
@@ -124,12 +124,15 @@ function external_program_menu(xsec)
 		var show_header = true;
 		var secnum = xtrn_area.sec_list[xsec].number+1;
 		var seccode = xtrn_area.sec_list[xsec].code;
-		if(!bbs.menu("xtrn" + secnum + "_head", P_NOERROR) &&
-			!bbs.menu("xtrn" + seccode + "_head", P_NOERROR)) {
-			show_header = !bbs.menu("xtrn_head", P_NOERROR);
-		}
-		else
+
+		if (bbs.menu("xtrn" + secnum + "_head", P_NOERROR) {
+			show_header = false;
+		} else if (bbs.menu("xtrn" + seccode + "_head", P_NOERROR)) {
 			show_header = false;
+		} else {
+			bbs.menu("xtrn_head", P_NOERROR);
+		}
+
 		if(bbs.menu("xtrn" + secnum, P_NOERROR) || bbs.menu("xtrn" + seccode, P_NOERROR)) {
 			if(!bbs.menu("xtrn" + secnum + "_tail", P_NOERROR) &&
 				!bbs.menu("xtrn" + seccode + "_tail", P_NOERROR)) {