J'ai une fuite dans le code suivant:NSCoding problème de fuite avec initWithCoder
-(id)initWithCoder:(NSCoder *)aDecoder {
if (self = [super init]) {
self.Tag = [aDecoder decodeObjectForKey:KEY_TAG];
self.ParentTag = [aDecoder decodeObjectForKey:KEY_PARENT_TAG];
self.Order = [aDecoder decodeObjectForKey:KEY_ORDER];
self.OrderFavorite = [aDecoder decodeObjectForKey:KEY_ORDER_FAVORITE];
self.isFavorite = [aDecoder decodeObjectForKey:KEY_IS_FAVORITE];
self.isPurchased = [aDecoder decodeObjectForKey:KEY_IS_PURCHASED];
self.Titel = [aDecoder decodeObjectForKey:KEY_TITEL];
}
return self;
}
La fuite apparaît dans les instruments de l'appareil dans cette ligne:
self.Titel = [aDecoder decodeObjectForKey:KEY_TITEL];
KEY_TITEL est:
#define KEY_TITEL @"Titel"
et auto.Titel est:
@property (nonatomic, retain) NSString *Titel;
il est synthétisé et il est libéré en dealloc.
Je n'ai aucune idée d'où vient la fuite. Pouvez-vous me aider ... s'il vous plaît
merci xnz
Si je ne trouve pas l'objet archivé, je l'attribue à un dictionnaire. Mais si je le fais, initWithCoder n'est pas appelé. Superclasse est NSObject, donc je ne l'ai pas assigné là. – xnz