Overwrite mime type, so that Opus files are recognized

This commit is contained in:
Martin Brodbeck 2013-12-16 13:18:59 +01:00
parent a8ae737bce
commit e6ac3cf34b
2 changed files with 7 additions and 1 deletions

View File

@ -188,7 +188,7 @@ QString CloudFileService::GuessMimeTypeForFile(const QString& filename) const {
return "audio/mpeg";
} else if (filename.endsWith(".m4a")) {
return "audio/mpeg";
} else if (filename.endsWith(".ogg")) {
} else if (filename.endsWith(".ogg") || filename.endsWith(".opus")) {
return "application/ogg";
} else if (filename.endsWith(".flac")) {
return "application/x-flac";

View File

@ -136,6 +136,12 @@ void DropboxService::RequestFileListFinished(QNetworkReply* reply) {
continue;
}
// Workaround: Since Dropbox doesn't recognize Opus files and thus treats them
// as application/octet-stream, we overwrite the mime type here
if (metadata["mime_type"].toString() == "application/octet-stream" &&
url.toString().endsWith(".opus"))
metadata["mime_type"] = GuessMimeTypeForFile(url.toString());
if (ShouldIndexFile(url, metadata["mime_type"].toString())) {
QNetworkReply* reply = FetchContentUrl(url);
NewClosure(reply, SIGNAL(finished()),