OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libgo/] [go/] [mime/] [type_unix.go] - Blame information for rev 747

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 747 jeremybenn
// Copyright 2010 The Go Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style
3
// license that can be found in the LICENSE file.
4
 
5
// +build darwin freebsd linux netbsd openbsd plan9
6
 
7
package mime
8
 
9
import (
10
        "bufio"
11
        "os"
12
        "strings"
13
)
14
 
15
var typeFiles = []string{
16
        "/etc/mime.types",
17
        "/etc/apache2/mime.types",
18
        "/etc/apache/mime.types",
19
}
20
 
21
func loadMimeFile(filename string) {
22
        f, err := os.Open(filename)
23
        if err != nil {
24
                return
25
        }
26
 
27
        reader := bufio.NewReader(f)
28
        for {
29
                line, err := reader.ReadString('\n')
30
                if err != nil {
31
                        f.Close()
32
                        return
33
                }
34
                fields := strings.Fields(line)
35
                if len(fields) <= 1 || fields[0][0] == '#' {
36
                        continue
37
                }
38
                mimeType := fields[0]
39
                for _, ext := range fields[1:] {
40
                        if ext[0] == '#' {
41
                                break
42
                        }
43
                        setExtensionType("."+ext, mimeType)
44
                }
45
        }
46
}
47
 
48
func initMime() {
49
        for _, filename := range typeFiles {
50
                loadMimeFile(filename)
51
        }
52
}
53
 
54
func initMimeForTests() map[string]string {
55
        typeFiles = []string{"test.types"}
56
        return map[string]string{
57
                ".t1":  "application/test",
58
                ".t2":  "text/test; charset=utf-8",
59
                ".png": "image/png",
60
        }
61
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.