summaryrefslogtreecommitdiffstats
path: root/modules/git/blob.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/git/blob.go')
-rw-r--r--modules/git/blob.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/git/blob.go b/modules/git/blob.go
index 674a6a9592..732356e5b2 100644
--- a/modules/git/blob.go
+++ b/modules/git/blob.go
@@ -10,6 +10,8 @@ import (
"encoding/base64"
"io"
"io/ioutil"
+
+ "code.gitea.io/gitea/modules/typesniffer"
)
// This file contains common functions between the gogit and !gogit variants for git Blobs
@@ -82,3 +84,14 @@ func (b *Blob) GetBlobContentBase64() (string, error) {
}
return string(out), nil
}
+
+// GuessContentType guesses the content type of the blob.
+func (b *Blob) GuessContentType() (typesniffer.SniffedType, error) {
+ r, err := b.DataAsync()
+ if err != nil {
+ return typesniffer.SniffedType{}, err
+ }
+ defer r.Close()
+
+ return typesniffer.DetectContentTypeFromReader(r)
+}