> >>(where I'm assuming that 'delete tmp' is the proper way to > deal with a > >>pointer returned by io_stream::open()...) > > You cannot directly delete tmp. This is delegated to the > stream provider.
That's what I was afraid of. Leaving a returned pointer hanging around is such an obvious problem, I figured that something else must be caching the value for later cleanup. -Samrobb