From cf70efaf449d200e3ee3d7bdf64975145ea91925 Mon Sep 17 00:00:00 2001 From: Abdullah Alfaraj <7842232+AbdullahAlfaraj@users.noreply.github.com> Date: Thu, 7 Dec 2023 08:03:05 +0300 Subject: [PATCH] break the realtime generation loop on error --- typescripts/comfyui/comfyui.tsx | 1 + typescripts/comfyui/main_ui.tsx | 16 ++++++++++------ typescripts/comfyui/util.ts | 6 ++++-- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/typescripts/comfyui/comfyui.tsx b/typescripts/comfyui/comfyui.tsx index 1932a98..f4803ca 100644 --- a/typescripts/comfyui/comfyui.tsx +++ b/typescripts/comfyui/comfyui.tsx @@ -1627,6 +1627,7 @@ class ComfyWorkflowComponent extends React.Component<{}, { value?: number }> { outputs ?? {} } catch (e) { console.error(e) + break } finally { clearInterval(interval as NodeJS.Timeout) store.data.progress_value = 0 diff --git a/typescripts/comfyui/main_ui.tsx b/typescripts/comfyui/main_ui.tsx index d06b243..e3cc225 100644 --- a/typescripts/comfyui/main_ui.tsx +++ b/typescripts/comfyui/main_ui.tsx @@ -467,12 +467,16 @@ async function generateComfyMode( // } // } console.log('final_prompt: ', final_prompt) - const { outputs, separated_outputs } = - await comfyui_util.postPromptAndGetBase64JsonResult( - final_prompt, - separated_output_node_ids - ) - + try { + var { outputs, separated_outputs } = + await comfyui_util.postPromptAndGetBase64JsonResult( + final_prompt, + separated_output_node_ids + ) + } catch (e) { + outputs = undefined + separated_outputs = undefined + } if (outputs) { image_url_list = Object.values(outputs).flat() image_base64_list = image_url_list.map((image_url) => { diff --git a/typescripts/comfyui/util.ts b/typescripts/comfyui/util.ts index db33a85..4280c54 100644 --- a/typescripts/comfyui/util.ts +++ b/typescripts/comfyui/util.ts @@ -274,7 +274,7 @@ export async function postPromptAndGetBase64JsonResult( } catch (e) { console.error(e) app.showAlert(`${e}`) - return { outputs: undefined, separated_outputs: undefined } + throw e } } export const getFileFormat = (fileName: string): string => @@ -529,7 +529,7 @@ async function maskExpansion( }, } try { - const { outputs, separated_outputs } = + var { outputs, separated_outputs } = await postPromptAndGetBase64JsonResult(prompt) if (outputs) { const expanded_mask = outputs['6'][0] @@ -538,6 +538,8 @@ async function maskExpansion( // html_manip.setInitImageMaskSrc(expanded_mask) } catch (e) { console.error(e) + outputs = undefined + separated_outputs = undefined } return base64_mask }