FIX: initslots could destroy environment
This commit is contained in:
parent
4a5a74929c
commit
0ccb607f19
2
C/exec.c
2
C/exec.c
@ -1164,11 +1164,11 @@ Yap_execute_goal(Term t, int nargs, Term mod)
|
|||||||
CP = saved_cp;
|
CP = saved_cp;
|
||||||
P = saved_p;
|
P = saved_p;
|
||||||
ASP = ENV;
|
ASP = ENV;
|
||||||
Yap_StartSlots();
|
|
||||||
#ifdef DEPTH_LIMIT
|
#ifdef DEPTH_LIMIT
|
||||||
DEPTH= ENV[E_DEPTH];
|
DEPTH= ENV[E_DEPTH];
|
||||||
#endif
|
#endif
|
||||||
ENV = (CELL *)(ENV[E_E]);
|
ENV = (CELL *)(ENV[E_E]);
|
||||||
|
Yap_StartSlots();
|
||||||
/* we have failed, and usually we would backtrack to this B,
|
/* we have failed, and usually we would backtrack to this B,
|
||||||
trouble is, we may also have a delayed cut to do */
|
trouble is, we may also have a delayed cut to do */
|
||||||
if (B != NULL)
|
if (B != NULL)
|
||||||
|
Reference in New Issue
Block a user