don't read zero bytes lengths