From bc2d2ede4c5a50383ae48a9afe12332b37571701 Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Thu, 11 Feb 2010 00:14:53 +0100 Subject: [PATCH] time_left(): Allow time_left==0, stones_left==0 from strange GTP peers Pointed out by jlg. --- timeinfo.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/timeinfo.c b/timeinfo.c index 9d4958f..babeaa3 100644 --- a/timeinfo.c +++ b/timeinfo.c @@ -96,11 +96,18 @@ time_left(struct time_info *ti, int time_left, int stones_left) assert(ti->period != TT_NULL); ti->dim = TD_WALLTIME; - if (stones_left == 0) { + if (!time_left && !stones_left) { + /* Some GTP peers send time_left 0 0 at the end of main time. */ + ti->period = TT_MOVE; + ti->len.t.main_time = 0; + /* byoyomi_time kept fully charged. */ + + } else if (!stones_left) { /* Main time */ ti->period = TT_TOTAL; ti->len.t.main_time = time_left; /* byoyomi_time kept fully charged. */ + } else { /* Byoyomi */ ti->period = TT_MOVE; -- 2.11.4.GIT