diff --git a/atom.go b/atom.go index 6e82cee..8e1b443 100644 --- a/atom.go +++ b/atom.go @@ -61,8 +61,17 @@ func isXMLMediaType(mediaType string) bool { // isValidMediaType checks whether a string is a valid media type. It returns a // bool. func isValidMediaType(mediaType string) bool { - _, _, err := mime.ParseMediaType(mediaType) - return err == nil + mediaType, _, err := mime.ParseMediaType(mediaType) + if err != nil { + return false + } + + typeParts := strings.Split(mediaType, "/") + if len(typeParts) != 2 || typeParts[0] == "" || typeParts[1] == "" { + return false + } + + return true } // isValidLanguageTag checks whether a LanguageTag is valid. It returns a bool.