title: IPhone - copyWithZone leak
body: <p>Testing my app on the device it returns a leak  whe i call the copy of a custom object ande i can't understand why.</p>
  
  <p>this is the call:</p>
  
  <pre><code>NSMutableArray *arr = [[NSMutableArray alloc] initWithCapacity:5];
  for (SinglePart *sp in [copyFrom partList]) {
      [arr addObject:[sp copy]];
  }
  self.partList = arr;
  [arr release];
  </code></pre>
  
  <p>this is the method:</p>
  
  <pre><code>- (id)copyWithZone:(NSZone *)zone {
      SinglePart *copy = [[[self class] allocWithZone:zone] initWithSinglePart:self];
      [copy loadImage];
      return copy;
  }
  </code></pre>
  
  <p>this is the method that is called by copyWithZone:</p>
  
  <pre><code>- (id)initWithSinglePart:(SinglePart *)copyFrom {
      if (self = [super init]) {
          self.imagePath = [copyFrom.imagePath copy];
          self.color = [UIColor colorWithCGColor:copyFrom.color.CGColor];
          self.hasOwnColor = copyFrom.hasOwnColor;
          self.blendingMode = copyFrom.blendingMode;
      }
      return self;
   }
  </code></pre>