@@ -262,6 +262,10 @@ def _prepare_upscale_image(self, dryrun=False):
262262 image = self ._doc .get_image (Bounds (0 , 0 , * extent )) if not dryrun else DummyImage (extent )
263263 params = self .upscale .params
264264 params .upscale .model = params .upscale .model or client .models .default_upscaler
265+ if params .upscale .model not in client .models .upscalers :
266+ msg = _ ("The upscale model used by the document is not available on the server" )
267+ self .report_error (Error (ErrorKind .warning , msg + f": { params .upscale .model } " ))
268+ self .upscale .upscaler = params .upscale .model = client .models .default_upscaler
265269 bounds = Bounds (0 , 0 , * self ._doc .extent )
266270 if params .use_prompt and not dryrun :
267271 conditioning , job_regions = process_regions (self .regions , bounds , min_coverage = 0 )
@@ -300,15 +304,14 @@ def _prepare_upscale_image(self, dryrun=False):
300304
301305 def upscale_image (self ):
302306 try :
307+ self .clear_error ()
303308 inputs , job_params = self ._prepare_upscale_image ()
304309 job = self .jobs .add (JobKind .upscaling , job_params )
305310 except Exception as e :
306311 self .report_error (util .log_error (e ))
307312 return
308313
309- self .clear_error ()
310314 self .upscale .set_in_progress (True )
311-
312315 eventloop .run (_report_errors (self , self ._enqueue_job (job , inputs )))
313316
314317 self ._doc .resize (job .params .bounds .extent )
0 commit comments