From d1242028d222f01b6529f3d54a492a431e332b7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADtor=20Santos=20Costa?= Date: Sun, 5 Oct 2014 10:24:44 +0100 Subject: [PATCH] fixes for notrace predicates. --- pl/signals.yap | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pl/signals.yap b/pl/signals.yap index 2da822648..e627f03dd 100644 --- a/pl/signals.yap +++ b/pl/signals.yap @@ -219,7 +219,17 @@ order of dispatch. % we may be creeping outside and coming back to system mode. '$start_creep'([M|G], _) :- '$is_no_trace'(G, M), !, - '$execute0'(G, M). + ( + '$$save_by'(CP), + '$enable_debugging', + '$execute_nonstop'(G, M), + '$$save_by'(CP2), + '$disable_debugging', + (CP == CP2 -> ! ; ( true ; '$enable_debugging', fail ) ) + ; + '$disable_debugging', + fail + ). '$start_creep'([Mod|G], WhereFrom) :- CP is '$last_choice_pt', '$do_spy'(G, Mod, CP, WhereFrom).