close needs to also reset the read position