summaryrefslogtreecommitdiff
path: root/mailnews
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2019-11-11 01:15:16 -0500
committerMatt A. Tobin <email@mattatobin.com>2019-11-11 01:15:16 -0500
commit3c41580e7182a23bf149a68a31cb51c6fb0a3008 (patch)
treebc5dd6a79cc74dc39293fa3ee7742cfdbe50a35d /mailnews
parent20aab9e0c3de593758ef9f7bf78c907e27857506 (diff)
downloaduxp-3c41580e7182a23bf149a68a31cb51c6fb0a3008.tar.gz
Bug 1554098 - deduce RSS media enclosures type from extension when missing.
Tag #1273
Diffstat (limited to 'mailnews')
-rw-r--r--mailnews/extensions/newsblog/content/FeedItem.js22
1 files changed, 12 insertions, 10 deletions
diff --git a/mailnews/extensions/newsblog/content/FeedItem.js b/mailnews/extensions/newsblog/content/FeedItem.js
index c3f9691f8b..25fc8ac300 100644
--- a/mailnews/extensions/newsblog/content/FeedItem.js
+++ b/mailnews/extensions/newsblog/content/FeedItem.js
@@ -452,16 +452,18 @@ function FeedEnclosure(aURL, aContentType, aLength, aTitle)
this.mTitle = aTitle;
// Generate a fileName from the URL.
- if (this.mURL)
- {
- try
- {
- this.mFileName = Services.io.newURI(this.mURL, null, null).
- QueryInterface(Ci.nsIURL).
- fileName;
- }
- catch(ex)
- {
+ if (this.mURL) {
+ try {
+ let uri = Services.io.newURI(this.mURL).QueryInterface(Ci.nsIURL);
+ this.mFileName = uri.fileName;
+ // Determine mimetype from extension if content-type is not present.
+ if (!aContentType) {
+ let contentType = Cc["@mozilla.org/mime;1"]
+ .getService(Ci.nsIMIMEService)
+ .getTypeFromExtension(uri.fileExtension);
+ this.mContentType = contentType;
+ }
+ } catch(ex) {
this.mFileName = this.mURL;
}
}