diff options
author | flow <flowlnlnln@gmail.com> | 2022-06-06 20:16:13 -0300 |
---|---|---|
committer | flow <flowlnlnln@gmail.com> | 2022-07-17 11:33:41 -0300 |
commit | 91776311c7faa5062bdfa0e543b513119d903002 (patch) | |
tree | cee5adbce2b2f933df3a1ed94d3e1c9107ceba89 /launcher/net | |
parent | 882c82f82c0f5a3b634c5784d0968174cfdb8960 (diff) | |
download | PrismLauncher-91776311c7faa5062bdfa0e543b513119d903002.tar.gz PrismLauncher-91776311c7faa5062bdfa0e543b513119d903002.tar.bz2 PrismLauncher-91776311c7faa5062bdfa0e543b513119d903002.zip |
fix: allow aborting upload tasks
This maintains the same behaviour as the Download task.
Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/net')
-rw-r--r-- | launcher/net/Upload.cpp | 10 | ||||
-rw-r--r-- | launcher/net/Upload.h | 2 |
2 files changed, 12 insertions, 0 deletions
diff --git a/launcher/net/Upload.cpp b/launcher/net/Upload.cpp index 12dd1e78..cfda4b4e 100644 --- a/launcher/net/Upload.cpp +++ b/launcher/net/Upload.cpp @@ -43,6 +43,16 @@ namespace Net { + bool Upload::abort() + { + if (m_reply) { + m_reply->abort(); + } else { + m_state = State::AbortedByUser; + } + return true; + } + void Upload::downloadProgress(qint64 bytesReceived, qint64 bytesTotal) { setProgress(bytesReceived, bytesTotal); } diff --git a/launcher/net/Upload.h b/launcher/net/Upload.h index 56687a31..7c194bbc 100644 --- a/launcher/net/Upload.h +++ b/launcher/net/Upload.h @@ -46,6 +46,8 @@ namespace Net { public: static Upload::Ptr makeByteArray(QUrl url, QByteArray *output, QByteArray m_post_data); + auto abort() -> bool override; + auto canAbort() const -> bool override { return true; }; protected slots: void downloadProgress(qint64 bytesReceived, qint64 bytesTotal) override; |