]> Repositorios git - scryer-prolog.git/commitdiff
catch errors thrown from tabling Worker (#1526, #1888)
authorMark <[email protected]>
Tue, 18 Jul 2023 18:10:27 +0000 (12:10 -0600)
committerMark <[email protected]>
Tue, 18 Jul 2023 18:10:27 +0000 (12:10 -0600)
src/lib/tabling.pl

index 606635fb195a170ba2d49850759fcfa269512a9c..e90080856b15ff2afdc07c925a8c1372afe98c60 100644 (file)
@@ -164,7 +164,9 @@ activate(Wrapper,Worker,T) :-
 
 delim(Wrapper,Worker,Table) :-
 %   debug(tabling, 'ACT: ~p on ~p', [Wrapper, Table]),
-    reset(Worker,SourceCall,Continuation),
+    catch(reset(Worker,SourceCall,Continuation),
+          _,
+          fail),
    ( Continuation = none ->
      (  add_answer(Table,Wrapper)
      ->         true %debug(tabling, 'ADD: ~p', [Wrapper])