shithub: riscv

Download patch

ref: fe3de0865872ffc42bfbe7082344c444beaae030
parent: b318debfc2c1b2d16cb7ed6f4cddec04a15c81c6
author: cinap_lenrek <cinap_lenrek@centraldogma>
date: Tue Oct 18 02:28:24 EDT 2011

file: reduce false hits for HTML files

--- a/sys/src/cmd/file.c
+++ b/sys/src/cmd/file.c
@@ -920,45 +920,20 @@
 	return 0;
 }
 
-char*	html_string[] =
-{
-	"?xml",
-	"!--",
-	"![CDATA[",
-	"!DOCTYPE",
-	"html",
-	"head",
-	"title",
-	"link",
-	"meta",
-	"body",
-	"script",
-	"strong",
-	"input",
-	"table",
-	"form",
-	"font",
-	"div",
-	"h1",
-	"h2",
-	"h3",
-	"h4",
-	"h5",
-	"h6",
-	"ol",
-	"ul",
-	"li",
-	"dl",
-	"br",
-	"hr",
-	"em",
-	"th",
-	"tr",
-	"td",
-	"p",
-	"b",
-	"i",
-	"a",
+char*	html_string[] = {
+	"blockquote",
+	"!DOCTYPE", "![CDATA[", "basefont", "frameset", "noframes", "textarea",
+	"caption",
+	"button", "center", "iframe", "object", "option", "script",
+	"select", "strong",
+	"blink", "embed", "frame", "input", "label", "param", "small",
+	"style", "table", "tbody", "tfoot", "thead", "title",
+	"?xml", "body", "code", "font", "form", "head", "html",
+	"link", "menu", "meta", "span",
+	"!--", "big", "dir", "div", "img", "pre", "sub", "sup",
+	"br", "dd", "dl", "dt", "em", "h1", "h2", "h3", "h4", "h5",
+	"h6", "hr", "li", "ol", "td", "th", "tr", "tt", "ul",
+	"a", "b", "i", "p", "q", "u",
 	0,
 };
 
@@ -985,11 +960,13 @@
 			if(p + n > buf+nbuf)
 				continue;
 			if(cistrncmp(html_string[i], (char*)p, n) == 0) {
-				if(++count > 2) {
-					print(mime ? "text/html\n" : "HTML file\n");
-					return 1;
-				}
 				p += n;
+				if(p < buf+nbuf && strchr("\t\r\n />", *p)){
+					if(++count > 2) {
+						print(mime ? "text/html\n" : "HTML file\n");
+						return 1;
+					}
+				}
 				break;
 			}
 		}