If the user deletes a field while editing (as an easy way of making that field empty) then "save" for that field will not get initialized before referencing it when constructing the new GECOS field.