错误处理机制纠正

This commit is contained in:
2026-08-16 03:34:17 +08:00
parent 893be8d2c6
commit b48a70515f
91 changed files with 1983 additions and 1516 deletions
+14 -4
View File
@@ -340,9 +340,14 @@ public:
auto& scene = scene_.render_scene();
if (scene.capture_state().enabled())
return "A performance capture session is already active";
const auto session_id = scene.capture_next_frame();
const auto capture = scene.capture_next_frame();
if (!capture) {
if (capture.error == Capture_Error::session_active)
return "A performance capture session is already active";
throw std::logic_error("validated capture request rejected");
}
last_action_result_ =
"capture session=" + std::to_string(session_id);
"capture session=" + std::to_string(capture.session_id);
return "Next 3D frame capture requested";
}
if (request.id == "capture_frames") {
@@ -356,9 +361,14 @@ public:
auto& scene = scene_.render_scene();
if (scene.capture_state().enabled())
return "A performance capture session is already active";
const auto session_id = scene.capture_frames(count);
const auto capture = scene.capture_frames(count);
if (!capture) {
if (capture.error == Capture_Error::session_active)
return "A performance capture session is already active";
throw std::logic_error("validated capture request rejected");
}
last_action_result_ = "capture session=" +
std::to_string(session_id) +
std::to_string(capture.session_id) +
" frames=" + std::to_string(count);
return "Consecutive 3D frame capture requested";
}