fix issue with offset setter where offset was re-applied if already set