mirror of
https://github.com/captbaritone/webamp.git
synced 2026-07-25 11:04:00 +00:00
Use async generator for handling uploads
This commit is contained in:
parent
ec8e791410
commit
f7b45868cf
1 changed files with 9 additions and 3 deletions
|
|
@ -3,6 +3,13 @@ import S3 from "../s3";
|
|||
import { addSkinFromBuffer } from "../addSkin";
|
||||
import { EventHandler } from "./app";
|
||||
|
||||
async function* reportedUploads() {
|
||||
const upload = await Skins.getReportedUpload();
|
||||
if (upload != null) {
|
||||
yield upload;
|
||||
}
|
||||
}
|
||||
|
||||
let processing = false;
|
||||
|
||||
export async function processUserUploads(eventHandler: EventHandler) {
|
||||
|
|
@ -11,8 +18,8 @@ export async function processUserUploads(eventHandler: EventHandler) {
|
|||
return;
|
||||
}
|
||||
processing = true;
|
||||
let upload = await Skins.getReportedUpload();
|
||||
while (upload != null) {
|
||||
const uploads = reportedUploads();
|
||||
for await (const upload of uploads) {
|
||||
try {
|
||||
const buffer = await S3.getUploadedSkin(upload.id);
|
||||
const result = await addSkinFromBuffer(
|
||||
|
|
@ -41,7 +48,6 @@ export async function processUserUploads(eventHandler: EventHandler) {
|
|||
eventHandler(action);
|
||||
console.error(e);
|
||||
}
|
||||
upload = await Skins.getReportedUpload();
|
||||
}
|
||||
|
||||
processing = false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue