Suppose the following:
The second call will create a new instance of www even if it already exists, and thus foo will be gone even though www still exists. The second call should not create a new instance of www but reuse the existing one.
Fixing this would require a major bc break. While this wouldn't be a reason not to do it, it would introduce another behaviour in other parts of vfsStream which is exactly the opposite of what a user would expect.