toaster
diff --git a/app_dart/lib/src/request_handlers/get_presubmit_guard.dart b/app_dart/lib/src/request_handlers/get_presubmit_guard.dart index 5bec07b..74a93c1 100644 --- a/app_dart/lib/src/request_handlers/get_presubmit_guard.dart +++ b/app_dart/lib/src/request_handlers/get_presubmit_guard.dart
@@ -166,16 +166,14 @@ ); var checkRunId = -1; - if (ciStagings.isNotEmpty) { - final guardJsonStr = ciStagings.first.checkRunGuard; - if (guardJsonStr.isNotEmpty) { - try { - // Try to extract the check-run id from the json string. - final guardJson = jsonDecode(guardJsonStr) as Map<String, Object?>; - checkRunId = guardJson['id'] as int? ?? 0; - } catch (_) { - // ignore - } + final guardJsonStr = ciStagings.first.checkRunGuard; + if (guardJsonStr.isNotEmpty) { + try { + // Try to extract the check-run id from the json string. + final guardJson = jsonDecode(guardJsonStr) as Map<String, Object?>; + checkRunId = guardJson['id'] as int? ?? 0; + } catch (_) { + // ignore } } @@ -198,9 +196,9 @@ for (final g in ciStagings) rpc_model.PresubmitGuardStage( name: g.stage?.name ?? 'unknown', - createdAt: g.createTime != null - ? DateTime.parse(g.createTime!).millisecondsSinceEpoch - : 0, + createdAt: + DateTime.tryParse(g.createTime ?? '')?.millisecondsSinceEpoch ?? + 0, jobs: { for (final MapEntry(:key, :value) in g.checkRuns.entries) key: _taskStatusFromConclusion(value),