Нет, у вас нет утечки памяти, но ваш инстинкт, что вы выделяете ненужную сумму, верен.
Как минимум, вы должны рассмотреть возможность переписать callingMethod
как:
- (void)callingMethod
{
NSMutableString *myStr = [self calledMethod];
}
Вы также можете убрать calledMethod
как:
- (NSMutableString*)calledMethod
{
return [NSMutableString stringWithCapacity:0]; // why 0 capacity?
}