% -----------------------------------------------------------------------------
-% $Id: PrelMarshalArray.lhs,v 1.7 2001/08/15 09:28:58 simonmar Exp $
+% $Id: PrelMarshalArray.lhs,v 1.8 2001/08/15 09:54:38 qrczak Exp $
%
% (c) The FFI task force, 2000
%
-- needed linear stack space.
--
peekArray :: Storable a => Int -> Ptr a -> IO [a]
-peekArray size ptr | size < 0 = return []
+peekArray size ptr | size <= 0 = return []
| otherwise = f (size-1) []
where
f 0 acc = do e <- peekElemOff ptr 0; return (e:acc)