summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2010-10-13 12:48:47 +0100
committerSimon MacMullen <simon@rabbitmq.com>2010-10-13 12:48:47 +0100
commited00629a8b7ba64e96a58580ff192e87fe323f4c (patch)
tree4ee62c5d2b78bffe0d3b58988cc267125d27e39c
parent590904df002ce27f5f89c75cd3f0476e9620d3ea (diff)
downloadrabbitmq-server-ed00629a8b7ba64e96a58580ff192e87fe323f4c.tar.gz
Switch to socket_into for the getstat things too.
-rw-r--r--src/rabbit_reader.erl12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index 2db219c7..52d3c3a5 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -821,11 +821,8 @@ i(SockStat, #v1{sock = Sock}) when SockStat =:= recv_oct;
SockStat =:= send_oct;
SockStat =:= send_cnt;
SockStat =:= send_pend ->
- case rabbit_net:getstat(Sock, [SockStat]) of
- {ok, [{SockStat, StatVal}]} -> StatVal;
- {error, einval} -> undefined;
- {error, Error} -> throw({cannot_get_socket_stats, Error})
- end;
+ socket_info(fun () -> rabbit_net:getstat(Sock, [SockStat]) end,
+ fun ([{_, I}]) -> I end);
i(state, #v1{connection_state = S}) ->
S;
i(channels, #v1{}) ->
@@ -851,7 +848,10 @@ i(Item, #v1{}) ->
throw({bad_argument, Item}).
socket_info(Get, Select, Sock) ->
- case Get(Sock) of
+ socket_info(fun() -> Get(Sock) end, Select).
+
+socket_info(Get, Select) ->
+ case Get() of
{ok, T} -> Select(T);
{error, _} -> ''
end.