diff --git a/gui.py b/gui.py index 495923b..6e635d0 100644 --- a/gui.py +++ b/gui.py @@ -1110,8 +1110,16 @@ class App: def cb_md_only(self): try: - md, path, _file_items = self._do_generate() - self.last_md = md + result_from_do_generate = self._do_generate() + if not isinstance(result_from_do_generate, (list, tuple)): + self._update_status(f"generate error: _do_generate returned a non-tuple ({type(result_from_do_generate)})") + return + num_values = len(result_from_do_generate) + if num_values != 4: + self._update_status(f"generate error: _do_generate returned {num_values} values, expected 4") + return + static_md, dynamic_md, path, _file_items = result_from_do_generate + self.last_md = f"{static_md}\n\n---\n\n{dynamic_md}" if static_md and dynamic_md else static_md or dynamic_md self.last_md_path = path self._update_status(f"md written: {path.name}") except Exception as e: @@ -1134,8 +1142,16 @@ class App: if self.send_thread and self.send_thread.is_alive(): return try: - md, path, file_items = self._do_generate() - self.last_md = md + result_from_do_generate = self._do_generate() + if not isinstance(result_from_do_generate, (list, tuple)): + self._update_status(f"generate error: _do_generate returned a non-tuple ({type(result_from_do_generate)})") + return + num_values = len(result_from_do_generate) + if num_values != 4: + self._update_status(f"generate error: _do_generate returned {num_values} values, expected 4") + return + static_md, dynamic_md, path, file_items = result_from_do_generate + self.last_md = static_md self.last_md_path = path self.last_file_items = file_items except Exception as e: @@ -2119,4 +2135,5 @@ def main(): if __name__ == "__main__": - main() \ No newline at end of file + main() +