diff --git a/src/eimap.erl b/src/eimap.erl --- a/src/eimap.erl +++ b/src/eimap.erl @@ -478,13 +478,10 @@ State#state { command_queue = queue:in_r(Command, State#state.command_queue) }. inflated(Data, #state{ inflator = undefined }) -> Data; -inflated(Data, #state{ inflator = Inflator }) -> joined(zlib:inflate(Inflator, Data), <<>>). +inflated(Data, #state{ inflator = Inflator }) -> iolist_to_binary(zlib:inflate(Inflator, Data)). deflated(Data, #state{ deflator = undefined }) -> Data; -deflated(Data, #state{ deflator = Deflator }) -> joined(zlib:deflate(Deflator, Data, sync), <<>>). - -joined([], Binary) -> Binary; -joined([H|Rest], Binary) -> joined(Rest, <>). +deflated(Data, #state{ deflator = Deflator }) -> iolist_to_binary(zlib:deflate(Deflator, Data, sync)). reset_timeout(#state{ command_timeout = Timeout } = State) -> cancel_timeout(State),