Merge pull request #1698 from mfietz/issue/1503-file-type-error

Downloader: Check content type for media
This commit is contained in:
Martin Fietz 2016-03-16 20:40:38 +01:00
commit e0d68a962b
3 changed files with 12 additions and 1 deletions

View File

@ -124,6 +124,15 @@ public class HttpDownloader extends Downloader {
throw e;
}
}
if(request.getFeedfileType() == FeedMedia.FEEDFILETYPE_FEEDMEDIA) {
String contentType = response.header("Content-Type");
if(!contentType.startsWith("audio/") && !contentType.startsWith("video/")) {
onFail(DownloadError.ERROR_FILE_TYPE, null);
return;
}
}
responseBody = response.body();
String contentEncodingHeader = response.header("Content-Encoding");
boolean isGzip = false;

View File

@ -19,7 +19,8 @@ public enum DownloadError {
ERROR_UNKNOWN_HOST(11, R.string.download_error_unknown_host),
ERROR_REQUEST_ERROR(12, R.string.download_error_request_error),
ERROR_DB_ACCESS_ERROR(13, R.string.download_error_db_access),
ERROR_UNAUTHORIZED(14, R.string.download_error_unauthorized);
ERROR_UNAUTHORIZED(14, R.string.download_error_unauthorized),
ERROR_FILE_TYPE(15, R.string.download_error_file_type_type);
private final int code;
private final int resId;

View File

@ -178,6 +178,7 @@
<string name="download_error_connection_error">Connection Error</string>
<string name="download_error_unknown_host">Unknown Host</string>
<string name="download_error_unauthorized">Authentication Error</string>
<string name="download_error_file_type_type">File Type Error</string>
<string name="cancel_all_downloads_label">Cancel all downloads</string>
<string name="download_canceled_msg">Download canceled</string>
<string name="download_canceled_autodownload_enabled_msg">Download canceled\nDisabled <i>Auto Download</i> for this item</string>