Unsetting can cause empty value to be stored instead of non-empty default values. Fixes issues introduced in f16d00b8, 2ae5f344, 8460840b, and 713810bd.