Skip to content

Commit 05b713e

Browse files
committed
More relaxed stockfish line parsing
1 parent 3e2bda0 commit 05b713e

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

lib/src/model/engine/uci_protocol.dart

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -148,16 +148,17 @@ class UCIProtocol {
148148
for (int i = 1; i < parts.length; i++) {
149149
switch (parts[i]) {
150150
case 'depth':
151-
depth = int.parse(parts[++i]);
151+
depth = int.tryParse(parts[++i]) ?? depth;
152152
case 'nodes':
153-
nodes = int.parse(parts[++i]);
153+
nodes = int.tryParse(parts[++i]) ?? nodes;
154154
case 'multipv':
155-
multiPv = int.parse(parts[++i]);
155+
multiPv = int.tryParse(parts[++i]) ?? multiPv;
156156
case 'time':
157-
elapsedMs = int.parse(parts[++i]);
157+
elapsedMs = int.tryParse(parts[++i]) ?? elapsedMs;
158158
case 'score':
159159
isMate = parts[++i] == 'mate';
160-
povEv = int.parse(parts[++i]);
160+
povEv = int.tryParse(parts[++i]);
161+
if (povEv == null) return;
161162
if (i + 1 < parts.length &&
162163
(parts[i + 1] == 'lowerbound' || parts[i + 1] == 'upperbound')) {
163164
evalType = parts[++i];

0 commit comments

Comments
 (0)