summaryrefslogtreecommitdiffstats
path: root/src/multimedia
diff options
context:
space:
mode:
authorQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-02-15 03:03:59 +0100
committerQt Forward Merge Bot <qt_forward_merge_bot@qt-project.org>2020-02-15 03:03:59 +0100
commitb2606eed8fa46c3f81bb9b03ca10409a00ed134f (patch)
treec8697ca341f567ee677671f0e68fc7efc6512079 /src/multimedia
parentd509b9d8375c1ca7dba6d236a06b6c49011a981c (diff)
parentcbdf4561f5cdb6ee95583f14a3769c3124228586 (diff)
Merge remote-tracking branch 'origin/5.14' into 5.15
Diffstat (limited to 'src/multimedia')
-rw-r--r--src/multimedia/playback/qmediaplayer.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/multimedia/playback/qmediaplayer.cpp b/src/multimedia/playback/qmediaplayer.cpp
index 153794801..2f1aa45c3 100644
--- a/src/multimedia/playback/qmediaplayer.cpp
+++ b/src/multimedia/playback/qmediaplayer.cpp
@@ -367,6 +367,13 @@ void QMediaPlayerPrivate::setMedia(const QMediaContent &media, QIODevice *stream
control->setMedia(media, file.data());
} else {
#if QT_CONFIG(temporaryfile)
+#if defined(Q_OS_ANDROID)
+ QString tempFileName = QDir::tempPath() + media.request().url().path();
+ QDir().mkpath(QFileInfo(tempFileName).path());
+ QTemporaryFile *tempFile = QTemporaryFile::createNativeFile(*file);
+ if (!tempFile->rename(tempFileName))
+ qWarning() << "Could not rename temporary file to:" << tempFileName;
+#else
QTemporaryFile *tempFile = new QTemporaryFile;
// Preserve original file extension, some backends might not load the file if it doesn't
@@ -385,7 +392,7 @@ void QMediaPlayerPrivate::setMedia(const QMediaContent &media, QIODevice *stream
tempFile->write(buffer, len);
}
tempFile->close();
-
+#endif
file.reset(tempFile);
control->setMedia(QMediaContent(QUrl::fromLocalFile(file->fileName())), nullptr);
#else