The reason you get this leak is because in the second loop you don't assign the returned value from GetCSV() to any variable. This value is then added to the garbage collection and only freed at the end of the program, therefore still there during the loop.
I will try to find a way to tighten the garbage collector in cases like that.