Я предполагаю, что вы делаете этот вызов внутри метода.На основании предоставленного вами кода убедитесь, что фрагмент кода действительно:
temp1= [[NSMutableString alloc]
initWithString:[source stringByReplacingOccurrencesOfString:@"rlm;" withString:@""]];
Я предполагаю, что вы вызываете stringByReplacingOcurrenceOfString: withString: для источников.
Сказав это, вы утверждаете, что программа падает при достижении 'dealloc' .. это будет означать, что temp1 объявлен как переменная экземпляра в вашем коде ... Если это так, правильный код должен быть (при условии, что temp1 являетсяобъявленное свойство с установленным атрибутом retain):
self.temp1 = [[NSMutableString alloc]
initWithString:[source stringByReplacingOccurrencesOfString:@"rlm;" withString:@""]];
Если temp1 не является ни переменной экземпляра, ни свойством, вы можете указать внутри метода, что temp1 является NSMutableString, и вернутьобъект автоматически освобожден.