Better text detection
This commit is contained in:
parent
9b1df43ef2
commit
294e8d8be2
|
@ -77,7 +77,7 @@ func fileDisplayHandler(c web.C, w http.ResponseWriter, r *http.Request) {
|
|||
} else if metadata.Mimetype == "application/pdf" {
|
||||
tpl = Templates["display/pdf.html"]
|
||||
|
||||
} else if supportedBinExtension(extension) {
|
||||
} else if metadata.Mimetype == "text/plain" || supportedBinExtension(extension) {
|
||||
if metadata.Size < maxDisplayFileSizeBytes {
|
||||
bytes, err := ioutil.ReadFile(filePath)
|
||||
if err == nil {
|
||||
|
|
10
meta.go
10
meta.go
|
@ -15,6 +15,7 @@ import (
|
|||
"path"
|
||||
"sort"
|
||||
"time"
|
||||
"unicode/utf8"
|
||||
|
||||
"bitbucket.org/taruti/mimemagic"
|
||||
"github.com/dchest/uniuri"
|
||||
|
@ -64,6 +65,15 @@ func generateMetadata(fName string, exp time.Time, delKey string) (m Metadata, e
|
|||
|
||||
m.Mimetype = mimemagic.Match("", header)
|
||||
|
||||
if m.Mimetype == "" {
|
||||
// Check if the file seems anything like text
|
||||
if utf8.Valid(header) {
|
||||
m.Mimetype = "text/plain"
|
||||
} else {
|
||||
m.Mimetype = "application/octet-stream"
|
||||
}
|
||||
}
|
||||
|
||||
// Compute the sha256sum
|
||||
hasher := sha256.New()
|
||||
file.Seek(0, 0)
|
||||
|
|
Loading…
Reference in New Issue