mirror of
https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
synced 2024-12-29 19:05:05 +08:00
fix borked merge, rename fields to better match what they do, change setting default to true for #13653
This commit is contained in:
parent
2a7ad70db5
commit
0aa7c53c0b
@ -78,7 +78,7 @@ def wrap_gradio_call(func, extra_outputs=None, add_stats=False):
|
|||||||
|
|
||||||
shared.state.skipped = False
|
shared.state.skipped = False
|
||||||
shared.state.interrupted = False
|
shared.state.interrupted = False
|
||||||
shared.state.interrupted_next = False
|
shared.state.stopping_generation = False
|
||||||
shared.state.job_count = 0
|
shared.state.job_count = 0
|
||||||
|
|
||||||
if not add_stats:
|
if not add_stats:
|
||||||
|
@ -51,7 +51,7 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args, to_scale=Fal
|
|||||||
if state.skipped:
|
if state.skipped:
|
||||||
state.skipped = False
|
state.skipped = False
|
||||||
|
|
||||||
if state.interrupted or state.interrupted_next:
|
if state.interrupted or state.stopping_generation:
|
||||||
break
|
break
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
@ -865,7 +865,7 @@ def process_images_inner(p: StableDiffusionProcessing) -> Processed:
|
|||||||
if state.skipped:
|
if state.skipped:
|
||||||
state.skipped = False
|
state.skipped = False
|
||||||
|
|
||||||
if state.interrupted or state.interrupted_next:
|
if state.interrupted or state.stopping_generation:
|
||||||
break
|
break
|
||||||
|
|
||||||
sd_models.reload_model_weights() # model can be changed for example by refiner
|
sd_models.reload_model_weights() # model can be changed for example by refiner
|
||||||
|
@ -120,7 +120,6 @@ options_templates.update(options_section(('system', "System", "system"), {
|
|||||||
"disable_mmap_load_safetensors": OptionInfo(False, "Disable memmapping for loading .safetensors files.").info("fixes very slow loading speed in some cases"),
|
"disable_mmap_load_safetensors": OptionInfo(False, "Disable memmapping for loading .safetensors files.").info("fixes very slow loading speed in some cases"),
|
||||||
"hide_ldm_prints": OptionInfo(True, "Prevent Stability-AI's ldm/sgm modules from printing noise to console."),
|
"hide_ldm_prints": OptionInfo(True, "Prevent Stability-AI's ldm/sgm modules from printing noise to console."),
|
||||||
"dump_stacks_on_signal": OptionInfo(False, "Print stack traces before exiting the program with ctrl+c."),
|
"dump_stacks_on_signal": OptionInfo(False, "Print stack traces before exiting the program with ctrl+c."),
|
||||||
"interrupt_after_current": OptionInfo(False, "Interrupt generation after current image is finished on batch processing"),
|
|
||||||
}))
|
}))
|
||||||
|
|
||||||
options_templates.update(options_section(('API', "API", "system"), {
|
options_templates.update(options_section(('API', "API", "system"), {
|
||||||
@ -286,6 +285,7 @@ options_templates.update(options_section(('ui_alternatives', "UI alternatives",
|
|||||||
"hires_fix_show_prompts": OptionInfo(False, "Hires fix: show hires prompt and negative prompt").needs_reload_ui(),
|
"hires_fix_show_prompts": OptionInfo(False, "Hires fix: show hires prompt and negative prompt").needs_reload_ui(),
|
||||||
"txt2img_settings_accordion": OptionInfo(False, "Settings in txt2img hidden under Accordion").needs_reload_ui(),
|
"txt2img_settings_accordion": OptionInfo(False, "Settings in txt2img hidden under Accordion").needs_reload_ui(),
|
||||||
"img2img_settings_accordion": OptionInfo(False, "Settings in img2img hidden under Accordion").needs_reload_ui(),
|
"img2img_settings_accordion": OptionInfo(False, "Settings in img2img hidden under Accordion").needs_reload_ui(),
|
||||||
|
"interrupt_after_current": OptionInfo(True, "Don't Interrupt in the middle").info("when using Interrupt button, if generating more than one image, stop after the generation of an image has finished, instead of immediately"),
|
||||||
}))
|
}))
|
||||||
|
|
||||||
options_templates.update(options_section(('ui', "User interface", "ui"), {
|
options_templates.update(options_section(('ui', "User interface", "ui"), {
|
||||||
|
@ -12,7 +12,7 @@ log = logging.getLogger(__name__)
|
|||||||
class State:
|
class State:
|
||||||
skipped = False
|
skipped = False
|
||||||
interrupted = False
|
interrupted = False
|
||||||
interrupted_next = False
|
stopping_generation = False
|
||||||
job = ""
|
job = ""
|
||||||
job_no = 0
|
job_no = 0
|
||||||
job_count = 0
|
job_count = 0
|
||||||
@ -80,9 +80,9 @@ class State:
|
|||||||
self.interrupted = True
|
self.interrupted = True
|
||||||
log.info("Received interrupt request")
|
log.info("Received interrupt request")
|
||||||
|
|
||||||
def interrupt_next(self):
|
def stop_generating(self):
|
||||||
self.interrupted_next = True
|
self.stopping_generation = True
|
||||||
log.info("Received interrupt request, interrupt after current job")
|
log.info("Received stop generating request")
|
||||||
|
|
||||||
def nextjob(self):
|
def nextjob(self):
|
||||||
if shared.opts.live_previews_enable and shared.opts.show_progress_every_n_steps == -1:
|
if shared.opts.live_previews_enable and shared.opts.show_progress_every_n_steps == -1:
|
||||||
@ -96,7 +96,7 @@ class State:
|
|||||||
obj = {
|
obj = {
|
||||||
"skipped": self.skipped,
|
"skipped": self.skipped,
|
||||||
"interrupted": self.interrupted,
|
"interrupted": self.interrupted,
|
||||||
"interrupted_next": self.interrupted_next,
|
"stopping_generation": self.stopping_generation,
|
||||||
"job": self.job,
|
"job": self.job,
|
||||||
"job_count": self.job_count,
|
"job_count": self.job_count,
|
||||||
"job_timestamp": self.job_timestamp,
|
"job_timestamp": self.job_timestamp,
|
||||||
@ -120,7 +120,7 @@ class State:
|
|||||||
self.id_live_preview = 0
|
self.id_live_preview = 0
|
||||||
self.skipped = False
|
self.skipped = False
|
||||||
self.interrupted = False
|
self.interrupted = False
|
||||||
self.interrupted_next = False
|
self.stopping_generation = False
|
||||||
self.textinfo = None
|
self.textinfo = None
|
||||||
self.job = job
|
self.job = job
|
||||||
devices.torch_gc()
|
devices.torch_gc()
|
||||||
|
@ -106,8 +106,14 @@ class Toprow:
|
|||||||
outputs=[],
|
outputs=[],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def interrupt_function():
|
||||||
|
if shared.state.job_count > 1 and shared.opts.interrupt_after_current:
|
||||||
|
shared.state.stop_generating()
|
||||||
|
else:
|
||||||
|
shared.state.interrupt()
|
||||||
|
|
||||||
self.interrupt.click(
|
self.interrupt.click(
|
||||||
fn=lambda: shared.state.interrupt(),
|
fn=interrupt_function,
|
||||||
inputs=[],
|
inputs=[],
|
||||||
outputs=[],
|
outputs=[],
|
||||||
)
|
)
|
||||||
|
@ -95,7 +95,7 @@ class Script(scripts.Script):
|
|||||||
processed = processing.process_images(p)
|
processed = processing.process_images(p)
|
||||||
|
|
||||||
# Generation cancelled.
|
# Generation cancelled.
|
||||||
if state.interrupted or state.interrupted_next:
|
if state.interrupted or state.stopping_generation:
|
||||||
break
|
break
|
||||||
|
|
||||||
if initial_seed is None:
|
if initial_seed is None:
|
||||||
@ -122,7 +122,7 @@ class Script(scripts.Script):
|
|||||||
|
|
||||||
p.inpainting_fill = original_inpainting_fill
|
p.inpainting_fill = original_inpainting_fill
|
||||||
|
|
||||||
if state.interrupted or state.interrupted_next:
|
if state.interrupted or state.stopping_generation:
|
||||||
break
|
break
|
||||||
|
|
||||||
if len(history) > 1:
|
if len(history) > 1:
|
||||||
|
@ -696,7 +696,7 @@ class Script(scripts.Script):
|
|||||||
grid_infotext = [None] * (1 + len(zs))
|
grid_infotext = [None] * (1 + len(zs))
|
||||||
|
|
||||||
def cell(x, y, z, ix, iy, iz):
|
def cell(x, y, z, ix, iy, iz):
|
||||||
if shared.state.interrupted or state.interrupted_next:
|
if shared.state.interrupted or state.stopping_generation:
|
||||||
return Processed(p, [], p.seed, "")
|
return Processed(p, [], p.seed, "")
|
||||||
|
|
||||||
pc = copy(p)
|
pc = copy(p)
|
||||||
|
Loading…
Reference in New Issue
Block a user