From 821f9f32f616cda1802563fb9be2f44ba161dff2 Mon Sep 17 00:00:00 2001 From: simon Date: Sun, 11 Sep 2005 11:57:24 +0000 Subject: [PATCH] Marginally greater robustness in the face of solve_game() failing to return an error message. git-svn-id: svn://svn.tartarus.org/sgt/puzzles@6288 cda61777-01e9-0310-a592-d414129be87e --- midend.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/midend.c b/midend.c index 64edfd3..cc360b5 100644 --- a/midend.c +++ b/midend.c @@ -1167,12 +1167,15 @@ char *midend_solve(midend *me) if (me->statepos < 1) return "No game set up to solve"; /* _shouldn't_ happen! */ - msg = "Solve operation failed"; /* game _should_ overwrite on error */ + msg = NULL; movestr = me->ourgame->solve(me->states[0].state, me->states[me->statepos-1].state, me->aux_info, &msg); - if (!movestr) + if (!movestr) { + if (!msg) + msg = "Solve operation failed"; /* _shouldn't_ happen, but can */ return msg; + } s = me->ourgame->execute_move(me->states[me->statepos-1].state, movestr); assert(s); -- 2.11.0