]> Cypherpunks repositories - gostls13.git/commitdiff
mime: use Scanner to read mime files during init
authorRob Pike <r@golang.org>
Wed, 20 Feb 2013 22:34:03 +0000 (14:34 -0800)
committerRob Pike <r@golang.org>
Wed, 20 Feb 2013 22:34:03 +0000 (14:34 -0800)
Also close the file when we're done.

R=bradfitz
CC=golang-dev
https://golang.org/cl/7363045

src/pkg/mime/type_unix.go

index 88eb83a735d167b34b157c220cfe22bd00208403..857a0ab6765d83114ef2f02bb64ad4c1cd557711 100644 (file)
@@ -23,15 +23,11 @@ func loadMimeFile(filename string) {
        if err != nil {
                return
        }
+       defer f.Close()
 
-       reader := bufio.NewReader(f)
-       for {
-               line, err := reader.ReadString('\n')
-               if err != nil {
-                       f.Close()
-                       return
-               }
-               fields := strings.Fields(line)
+       scanner := bufio.NewScanner(f)
+       for scanner.Scan() {
+               fields := strings.Fields(scanner.Text())
                if len(fields) <= 1 || fields[0][0] == '#' {
                        continue
                }
@@ -43,6 +39,9 @@ func loadMimeFile(filename string) {
                        setExtensionType("."+ext, mimeType)
                }
        }
+       if err := scanner.Err(); err != nil {
+               panic(err)
+       }
 }
 
 func initMime() {