GenerateOutputInformation calls UpdateOutputInformation and overwrites the Geometry even if nothing has changed...
The result is that a Geometry that is altered inside a ProcessObject (e.g. rotated) and it's BaseData is set as an Output, is reset when Update is called on that Filter.
->EVIL