Bugfix: don't lose unset dimensions on setter!

At the moment this is cosmetic as the underlying shapes don't lose
anything.  But definitely a bug!