Don't look at virtual files data for the mimetype matches

Otherwise this would attempt to download the file everytime we check the
direct editor for a given file which wouldn't be adequate. Would also
lead to a deadlock in our case since that would happen in the main
thread and implicit hydration is driven from there as well.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
This commit is contained in:
Kevin Ottens 2020-12-29 15:11:33 +01:00
parent 90fbb7d322
commit e37a5f36b0
No known key found for this signature in database
GPG Key ID: 074BBBCB8DECC9E2

View File

@ -1178,8 +1178,11 @@ DirectEditor* SocketApi::getDirectEditorForLocalFile(const QString &localFile)
auto capabilities = fileData.folder->accountState()->account()->capabilities();
if (fileData.folder && fileData.folder->accountState()->isConnected()) {
const auto record = fileData.journalRecord();
const auto mimeMatchMode = record.isVirtualFile() ? QMimeDatabase::MatchExtension : QMimeDatabase::MatchDefault;
QMimeDatabase db;
QMimeType type = db.mimeTypeForFile(localFile);
QMimeType type = db.mimeTypeForFile(localFile, mimeMatchMode);
DirectEditor* editor = capabilities.getDirectEditorForMimetype(type);
if (!editor) {