mirror of
https://github.com/easydiffusion/easydiffusion.git
synced 2024-12-23 23:49:11 +01:00
Fix removing old tasks stopping the current render.
This commit is contained in:
parent
7060108a8b
commit
09b50badb1
@ -637,23 +637,25 @@ async function checkTasks() {
|
||||
const genSeeds = Boolean(typeof task.reqBody.seed !== 'number' || (task.reqBody.seed === task.seed && task.numOutputsTotal > 1))
|
||||
const startSeed = task.reqBody.seed || task.seed
|
||||
for (let i = 0; i < task.batchCount; i++) {
|
||||
let newTask = task;
|
||||
if (task.batchCount > 1) {
|
||||
// Each output render batch needs it's own task instance to avoid altering the other runs after they are completed.
|
||||
task = Object.assign({}, task, {
|
||||
newTask = Object.assign({}, task, {
|
||||
reqBody: Object.assign({}, task.reqBody)
|
||||
})
|
||||
}
|
||||
if (genSeeds) {
|
||||
task.reqBody.seed = startSeed + (i * task.reqBody.num_outputs)
|
||||
task.seed = task.reqBody.seed
|
||||
} else if (task.seed !== task.reqBody.seed) {
|
||||
task.seed = task.reqBody.seed
|
||||
newTask.reqBody.seed = startSeed + (i * newTask.reqBody.num_outputs)
|
||||
newTask.seed = newTask.reqBody.seed
|
||||
} else if (newTask.seed !== newTask.reqBody.seed) {
|
||||
newTask.seed = newTask.reqBody.seed
|
||||
}
|
||||
|
||||
let success = await doMakeImage(task)
|
||||
let success = await doMakeImage(newTask)
|
||||
task.batchesDone++
|
||||
|
||||
if (!task.isProcessing) {
|
||||
if (!newTask.isProcessing) {
|
||||
task.isProcessing = false
|
||||
break
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user