From f1613bf732d54e34d677af526fbbc0ddf330afa6 Mon Sep 17 00:00:00 2001 From: vsc Date: Mon, 28 Jan 2008 18:12:36 +0000 Subject: [PATCH] fix small bug in restore opcode git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2068 b08c6af1-5177-4d33-ba66-4b1c6b8b522a --- H/rclause.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/H/rclause.h b/H/rclause.h index b45ac8d4c..f7667c011 100644 --- a/H/rclause.h +++ b/H/rclause.h @@ -12,8 +12,12 @@ * File: rclause.h * * comments: walk through a clause * * * -* Last rev: $Date: 2008-01-23 17:57:55 $,$Author: vsc $ * +* Last rev: $Date: 2008-01-28 18:12:36 $,$Author: vsc $ * * $Log: not supported by cvs2svn $ +* Revision 1.22 2008/01/23 17:57:55 vsc +* valgrind it! +* enable atom garbage collection. +* * Revision 1.21 2007/11/26 23:43:09 vsc * fixes to support threads and assert correctly, even if inefficiently. * @@ -396,7 +400,10 @@ restore_opcodes(yamop *pc) case _p_execute2: pc->u.sla.sla_u.p = PtoPredAdjust(pc->u.sla.sla_u.p); if (pc->u.sla.sla_u.mod != 0) { - pc->u.sla.sla_u.mod = AtomTermAdjust(pc->u.sla.sla_u.mod); + if (IsAtomTerm(pc->u.sla.sla_u.mod)) + pc->u.sla.sla_u.mod = AtomTermAdjust(pc->u.sla.sla_u.mod); + else + pc->u.sla.sla_u.p = PtoPredAdjust(pc->u.sla.sla_u.p); } pc->u.sla.p0 = PtoPredAdjust(pc->u.sla.p0); if (pc->u.sla.bmap != NULL) {