From bee5cd8c0b0b1fbd74d55ef96c880a88175c014b Mon Sep 17 00:00:00 2001 From: vsc Date: Wed, 26 Mar 2008 14:51:41 +0000 Subject: [PATCH] fix thread_dettach git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2168 b08c6af1-5177-4d33-ba66-4b1c6b8b522a --- pl/threads.yap | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pl/threads.yap b/pl/threads.yap index c60538f0a..cc7ff7a8f 100644 --- a/pl/threads.yap +++ b/pl/threads.yap @@ -286,7 +286,16 @@ thread_cancel(Id) :- thread_detach(Id) :- '$check_thread_or_alias'(Id, thread_detach(Id)), '$thread_id_alias'(Id0, Id), - '$detach_thread'(Id0). + ( + recorded('$thread_detached', [Id0|_], R), + erase(R), + fail + ; + recordz('$thread_detached', [Id0|true], _), + fail + ; + '$detach_thread'(Id0) + ). thread_exit(Term) :- var(Term), !,