diff --git a/lib/client/dashboard_window.py b/lib/client/dashboard_window.py index a4699c7..68fa5ca 100644 --- a/lib/client/dashboard_window.py +++ b/lib/client/dashboard_window.py @@ -191,7 +191,7 @@ class DashboardWindow: import io image_data = response.content image = Image.open(io.BytesIO(image_data)) - if self.server_proxy.hostname == hostname: + if self.server_proxy.hostname == hostname and job_id == self.selected_job_id(): self.set_image(image) except Exception as e: logger.error(f"error fetching image: {e}") diff --git a/lib/render_workers/base_worker.py b/lib/render_workers/base_worker.py index 613c5ae..9617e49 100644 --- a/lib/render_workers/base_worker.py +++ b/lib/render_workers/base_worker.py @@ -214,14 +214,12 @@ class BaseRenderWorker(Base): self.is_finished = True return - duration = self.end_time - self.start_time - if return_code: - message = f"{self.engine.name()} render failed with return_code {return_code} after {duration}" + message = f"{self.engine.name()} render failed with return_code {return_code} after {self.time_elapsed()}" logger.error(message) self.failed_attempts = self.failed_attempts + 1 else: - message = f"{self.engine.name()} render completed successfully in {duration}" + message = f"{self.engine.name()} render completed successfully in {self.time_elapsed()}" logger.info(message) self.status = RenderStatus.COMPLETED @@ -322,6 +320,7 @@ class BaseRenderWorker(Base): 'client': self.client, 'date_created': self.date_created, 'start_time': self.start_time, + 'end_time': self.end_time, 'status': self.status.value, 'time_elapsed': self.time_elapsed(), 'file_hash': self.file_hash, diff --git a/lib/server/server_proxy.py b/lib/server/server_proxy.py index ff29098..dcecfcb 100644 --- a/lib/server/server_proxy.py +++ b/lib/server/server_proxy.py @@ -40,6 +40,8 @@ class RenderServerProxy: req = self.request(payload, timeout) if req.ok and req.status_code == 200: return req.json() + except json.JSONDecodeError as e: + logger.error(f"JSON decode error: {e}") except requests.ConnectionError as e: logger.error(f"Connection error: {e}") except Exception as e: