Fixing code by not touching it follow up

In the case I described the code is in a subclass a Xojo class

The idea here is to INSERT a new subclass between the existing subclass and the new one. And the newly inserted subclass will expose things in a way the OLD existing code wont break

So we never touch the old code
We just modify the inheritance chain in a way we can then alter how things behave

So in his case we can add a new subclass of EmailMessage that exposes the Source as a Method pair ( get & set) and then make the existing class inherit from our new class

And the existing code will then JUST work without ever having had to alter any of it

Next time you have an issue like this consider that as an option !