aboutsummaryrefslogtreecommitdiff
path: root/launcher/net
diff options
context:
space:
mode:
authorflow <flowlnlnln@gmail.com>2022-06-06 20:16:13 -0300
committerflow <flowlnlnln@gmail.com>2022-07-17 11:33:41 -0300
commit91776311c7faa5062bdfa0e543b513119d903002 (patch)
treecee5adbce2b2f933df3a1ed94d3e1c9107ceba89 /launcher/net
parent882c82f82c0f5a3b634c5784d0968174cfdb8960 (diff)
downloadPrismLauncher-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.cpp10
-rw-r--r--launcher/net/Upload.h2
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;