Обычно, используйте [NSMutableDictionary dictionaryWithCapacity:1]
вместо alloc / init. Это даст вам автоматически выпущенный словарь, который с точки зрения управления памятью будет вести себя идентично приведенному выше. Однако ...
В этом конкретном случае ваше условие if никогда не будет истинным (если только у вас не хватает памяти, и в этом случае у вас возникают большие проблемы). -dictionaryWithDictionary:
возвращает пустой словарь, а не ноль, если ему передан ноль. Таким образом, даже если -dictionaryForKey:
вернет nil, -dictionaryWithDictionary:
все равно создаст пустой изменяемый словарь для добавления.