client: don't cache one type in QWaylandMimeData

"application/vnd.portal.filetransfer", which is only valid for one
time use.

Fixes: QTBUG-107858
Pick-to: 6.7 6.6 6.5 6.2 5.15
Change-Id: I094de22ea0bb9b3577572e6c57ebe42cdc8c7b41
Reviewed-by: David Edmundson <davidedmundson@kde.org>
This commit is contained in:
Liang Qi 2024-03-13 11:53:58 +01:00
parent 4446f4571a
commit e30dbe924b

View File

@ -32,6 +32,11 @@ static QString mozUrl()
return QStringLiteral("text/x-moz-url");
}
static QString portalFileTransfer()
{
return QStringLiteral("application/vnd.portal.filetransfer");
}
static QByteArray convertData(const QString &originalMime, const QString &newMime, const QByteArray &data)
{
if (originalMime == newMime)
@ -214,7 +219,9 @@ QVariant QWaylandMimeData::retrieveData_sys(const QString &mimeType, QMetaType t
content = convertData(mimeType, mime, content);
m_data.insert(mimeType, content);
if (mimeType != portalFileTransfer())
m_data.insert(mimeType, content);
return content;
}