[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnugo-devel] arend_3_5.8: one more semeai crash fix
From: |
Arend Bayer |
Subject: |
[gnugo-devel] arend_3_5.8: one more semeai crash fix |
Date: |
Thu, 4 Jul 2002 08:47:42 +0200 (CEST) |
On Wed, 3 Jul 2002, Trevor Morris wrote:
> Here's the backtrace. It's an invalid memory access.
Thanks, I should have seen this. A patch is below.
> >> Note that you should get a message "Stack has moved....", otherwise the
> >> problem didn't even occur.
> I don't see the "stack has moved" message. (I ran: "../interface/gnugo.exe
> --mode gtp -t < semeai.tst" )
I had disabled that for CVS (change 0 to 1 in owl.c:4647 and I am sure
you would get the message).
Actually, 3.2 has the same problem, and this might in fact explain the bug
Paul Pogonyshev reported; however, I don't see why he triggered a stack
enlargement in the first place. (It would get triggered by starting GNU
Go at say level 8 and then increasing it, however.)
NB: Are we planning a 3.2.1? I think there are now a few bugfixes that
would go in there; OTOH we haven't found out anything about the first
bug Josh Stern had reported.
Arend
- one more bugfix in pop_owl() in case stack has moved
Index: engine/owl.c
===================================================================
RCS file: /cvsroot/gnugo/gnugo/engine/owl.c,v
retrieving revision 1.95
diff -u -r1.95 owl.c
--- engine/owl.c 27 Jun 2002 18:28:04 -0000 1.95
+++ engine/owl.c 4 Jul 2002 06:37:48 -0000
@@ -4663,7 +4663,7 @@
static void
pop_owl(struct local_owl_data **owl)
{
- int nodes = (*owl)->local_owl_node_counter;
+ int nodes = owl_stack[owl_stack_pointer].local_owl_node_counter;
*owl = &(owl_stack[owl_stack[owl_stack_pointer].restore_from]);