The crash I was experiencing before when updating department names multiple times has gone. I think the lesson is that you need to either update an array in a plist with an array of the same length, or to change it to zero length and write the new array.