aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorletouzey2011-04-21 22:44:22 +0000
committerletouzey2011-04-21 22:44:22 +0000
commitdf95bf41c5d60d5baa915cb3ca6080af4da968ec (patch)
treee96d80cde915d4514ed687f6c74a46f1afa510f8
parent85f178287ad6192c478b5e8ee2fbd28e613fbb9a (diff)
Coqide: let's try to be synchronuous when killing coqtop
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14051 85f007b7-540e-0410-9357-904b9bb8a0f7
-rw-r--r--ide/coq.ml6
1 files changed, 2 insertions, 4 deletions
diff --git a/ide/coq.ml b/ide/coq.ml
index dda040e296..ef444292d6 100644
--- a/ide/coq.ml
+++ b/ide/coq.ml
@@ -178,7 +178,8 @@ let break_coqtop coqtop =
let killer = ref (fun pid -> Unix.kill pid Sys.sigkill)
-let blocking_kill pid =
+let kill_coqtop coqtop =
+ let pid = coqtop.pid in
begin
try !killer pid
with _ -> prerr_endline "Kill -9 failed. Process already terminated ?"
@@ -188,9 +189,6 @@ let blocking_kill pid =
Mutex.lock toplvl_ctr_mtx; decr toplvl_ctr; Mutex.unlock toplvl_ctr_mtx
with _ -> prerr_endline "Error while waiting for child"
-let kill_coqtop coqtop =
- ignore (Thread.create blocking_kill coqtop.pid)
-
(** * Calls to coqtop *)
(** Cf [Ide_intf] for more details *)