you are right, but I see that in a more positive manner: if a local copy of the pointer is hold, then the whole semantic changes. everybody involved should be aware of the fact, that the caller doesn't own the returned pointer alone any more. imagine someone else resets the pointers you thought is in your (alone) ownage.
a collateral API change is an effective way to signal the change of semantic to everybody who should care.