I've made the same mistake many times:
I've tried to use a Stream that is positioned in the end, consequently returning nothing.
What is the best way of designing the code involved in the stream loading and passing to avoid forgetting to rewind it?
It's is always better to have the stream just initializated but always load the data while being consumed to avoid this?
This is needed in not seekable streams, but what about memory or file streams? It is OK to have it loaded with data (from a file, of example) and having to rewind it prior to consuming it?
What do you think?