summaryrefslogtreecommitdiff
path: root/src/poolclient.ml
diff options
context:
space:
mode:
Diffstat (limited to 'src/poolclient.ml')
-rw-r--r--src/poolclient.ml13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/poolclient.ml b/src/poolclient.ml
index 00b0d35..b6d5a89 100644
--- a/src/poolclient.ml
+++ b/src/poolclient.ml
@@ -10,11 +10,14 @@ let fullfill_request task (addr, port) n =
for i = 0 to n-1 do
Format.eprintf "Spawn %s@." task;
if fork() = 0 then begin
- let sock = socket PF_INET SOCK_STREAM 0 in
- connect sock (make_addr addr port);
- dup2 sock stdin;
- dup2 sock stdout;
- execv task [|task|]
+ try
+ let sock = socket PF_INET SOCK_STREAM 0 in
+ connect sock (make_addr addr port);
+ dup2 sock stdin;
+ dup2 sock stdout;
+ execv task [|task|]
+ with
+ | _ -> exit 0
end
done