FIX bug du process qui ne se terminait pas lorsque la connexion tcp était fermé ...
[euphorik.git] / modules / erl / euphorik_requests.erl
index 5c2e538..edc0e17 100755 (executable)
@@ -20,12 +20,13 @@ tester() ->
 
 \r
 out(A) ->
-   %io:format("~p~n~n", [A]),
+   %io:format("~p~n", [A]), % utilisé parfois pendant le debug
    IP = case inet:peername(A#arg.clisock) of
-         {ok, {Adresse, _Port}} -> Adresse;
+      {ok, {Adresse, _Port}} -> Adresse;
       _ -> inconnue
-   end,\r
-   %inet:setopts(A#arg.clisock, inet:getopts(A#arg.clisock, [active])),\r
+   end,
+   % passive -> active, permet de recevoir {tcp_closed, _} lorsque le socket se ferme\r
+   inet:setopts(A#arg.clisock, [{active, true}]),\r
    {value, {_, Contenu}} = lists:keysearch("action", 1, yaws_api:parse_post(A)),\r
    Ret = traiter_donnees(Contenu, IP),
    {content, "application/json", Ret}.\r