crash handler, model guard, status temp/fan, timeout fix
- SIGSEGV/SIGABRT crash handler in ui/main.cc prints stack trace to stderr - Fixed onroad crash: guard update_model() against empty model position data (was dereferencing end()-1 on empty list when modeld not running in bench) - Status window: added device temperature and fan speed - Interactive timeout returns to splash/onroad (not ClearPilotPanel) - bench_cmd dump detects crash loops via UI process uptime check - bench_cmd wait_ready timeout increased to 20s - Restored camerad to bench ignore list (not needed for UI testing) - Updated CLAUDE.md with crash debugging procedures Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -93,6 +93,9 @@ void update_model(UIState *s,
|
||||
if (plan_position.getX().size() < model.getPosition().getX().size()) {
|
||||
plan_position = model.getPosition();
|
||||
}
|
||||
// CLEARPILOT: guard against empty model data (bench mode, no modeld running)
|
||||
if (plan_position.getX().size() == 0) return;
|
||||
|
||||
float max_distance = scene.unlimited_road_ui_length ? *(plan_position.getX().end() - 1) :
|
||||
std::clamp(*(plan_position.getX().end() - 1),
|
||||
MIN_DRAW_DISTANCE, MAX_DRAW_DISTANCE);
|
||||
|
||||
Reference in New Issue
Block a user