fix download cancel

This commit is contained in:
Emily 2018-07-12 11:22:49 -07:00
parent 05696cffd9
commit b76899a353
1 changed files with 13 additions and 11 deletions

View File

@ -94,7 +94,6 @@ export default class FileReceiver extends Nanobus {
this.downloadRequest = {
cancel: () => {
this.sendMessageToSw({ request: 'cancel', id: this.fileInfo.id });
throw new Error(0);
}
};
@ -129,17 +128,17 @@ export default class FileReceiver extends Nanobus {
document.body.appendChild(a);
a.click();
URL.revokeObjectURL(downloadUrl);
}
let prog = 0;
while (prog < this.fileInfo.size) {
const msg = await this.sendMessageToSw({
request: 'progress',
id: this.fileInfo.id
});
prog = msg.progress;
onprogress([prog, this.fileInfo.size]);
await delay();
}
let prog = 0;
while (prog < this.fileInfo.size) {
const msg = await this.sendMessageToSw({
request: 'progress',
id: this.fileInfo.id
});
prog = msg.progress;
onprogress([prog, this.fileInfo.size]);
await delay();
}
this.downloadRequest = null;
@ -147,6 +146,9 @@ export default class FileReceiver extends Nanobus {
this.state = 'complete';
} catch (e) {
this.downloadRequest = null;
if (e === 'cancelled') {
throw new Error(0);
}
throw e;
}
}