I am guessing that the hash variable that you are passing back from inside MySubRoutine() is a global variable. Define it as a local within the subroutine using "my" instead and see what happens.
-Imran
Comment on Re: Associated Array Appending Unwillingly