diff --git a/haskell/src/Data/MessagePack/Base.hsc b/haskell/src/Data/MessagePack/Base.hsc index 72c421ce..8c7b9f54 100644 --- a/haskell/src/Data/MessagePack/Base.hsc +++ b/haskell/src/Data/MessagePack/Base.hsc @@ -560,6 +560,7 @@ unpackObject z dat = allocaBytes (#size msgpack_object) $ \ptr -> BS.useAsCStringLen dat $ \(str, len) -> alloca $ \poff -> do + poke poff 0 ret <- msgpack_unpack str (fromIntegral len) poff z ptr case ret of (#const MSGPACK_UNPACK_SUCCESS) -> do