title: game crashes with SIGKILL when running animation on custom SKSpriteNode
body: <p>I'm encountering a very weird error causing my app to crash. I have created a custom SKSpriteNode called heroSpriteNode. Here is my initialization:</p>
  
  <pre><code> (id) init
  {
   if (self = [super init])
  {
      [self loadAnimations];
      SKTexture *temp = self.gorillaStandingFrames[0];
      self = [heroSpriteNode spriteNodeWithTexture:temp];
      [self setUpHeroDetails];
  }
  return self;
  }
  </code></pre>
  
  <p>The error is occurring when attempting to run an action on "self" the custom SkSpriteNode, like this:</p>
  
  <pre><code>-(void)jump
  {
  
  NSLog(@"Jump Tap!");
  
  if(self.isOnTheGround)
  {
      self.physicsBody.velocity = CGVectorMake(0, 0);
      self.physicsBody.angularVelocity = 0;
      self.timedJump=NO;
      [self.physicsBody applyImpulse:CGVectorMake(0, 350)];
      [self removeActionForKey:@"walkingInPlaceBear"];
      [self jumpingGorilla2]; // HERE IS THE ERROR
      self.isOnTheGround=NO;
      self.isRunning=NO;
      self.isStanding=NO;
      self.jumpFixTimer = [NSTimer scheduledTimerWithTimeInterval:0.4 target:self selector:@selector(flipTimedJumpBoolean) userInfo:nil repeats:NO];
  
  }
  
  }
  </code></pre>
  
  <p>I know this animation (and other animations I run) is the issue, because when I comment out that line the game runs fine.</p>
  
  <p>Here is how I am loading the textures and creating an action:</p>
  
  <pre><code>-(void)loadJumpAnimation2
  {
  NSMutableArray *jumpFrames = [NSMutableArray array];
  SKTextureAtlas *gorillaAnimatedAtlas = [SKTextureAtlas atlasNamed:@"mainCharJump"];
  int numImages = gorillaAnimatedAtlas.textureNames.count;
  for (int i=2; i &lt;= numImages; i++) {
      NSString *textureName = [NSString stringWithFormat:@"j%d", i];
      SKTexture *temp = [gorillaAnimatedAtlas textureNamed:textureName];
      [jumpFrames addObject:temp];
  }
  self.gorillaFlyingJump = jumpFrames;
  
  }
  
  
  -(void)jumpingGorilla2
  {
  
  [self runAction:[SKAction repeatActionForever:
                           [SKAction animateWithTextures:self.gorillaFlyingJump
                                            timePerFrame:0.25f
                                                  resize:NO
                                                 restore:YES]]       withKey:@"jump"];
  
  return;
  }
  </code></pre>
  
  <p>When it crashes there is no crash report in the logger, only a popup message in Xcode that is of type: 9 SIGKILL. It seems like this could be a memory issue related to how the animation frames are being stored? The animations ran fine on a standard SkSpriteNode, then after refactoring much of the code into a custom SkSpriteNode, I can no longer apply animations. Any ideas? Thank you.</p>
  
  <p>UPDATE:</p>
  
  <p>I've created another class to try to isolate the issue I'm having, I will post the code below with comments.</p>
  
  <p>Here is the entire test class I created:</p>
  
  <pre><code>#import "heroTestNode.h"
  
  @implementation heroTestNode
  
  
  - (id) init
  {
  if (self = [super init])
  {
      [self loadAnimations];
      SKTexture *temp = self.gorillaWalkingFrames[0];
      self = [heroTestNode spriteNodeWithTexture:temp];
  }
  return self;
  }
  
  
  
  -(void)loadAnimations
  {
  
   NSMutableArray *walkFrames = [NSMutableArray array];
   SKTextureAtlas *gorillaAnimatedAtlas = [SKTextureAtlas     atlasNamed:@"mainCharRun2"];
  
  
  int numImages = gorillaAnimatedAtlas.textureNames.count;
  NSLog(@"Here are how many animation frames: %d", numImages);
  
  for (int i=1; i &lt;= numImages; i++) {
      NSString *textureName = [NSString stringWithFormat:@"r%d", i];
      SKTexture *temp = [gorillaAnimatedAtlas textureNamed:textureName];
      [walkFrames addObject:temp];
  }
  self.gorillaWalkingFrames = walkFrames;
  }
  
  -(void)walkingGorilla // running this is causing the SIGKILL 9 crash
  {
  
  [self runAction:[SKAction repeatActionForever:
                   [SKAction animateWithTextures:self.gorillaWalkingFrames
                                    timePerFrame:0.1
                                          resize:NO
                                         restore:YES]]   withKey:@"test"];
  return;
  }
  
  
  
  @end
  </code></pre>
  
  <p>Here is the interface:</p>
  
  <pre><code>#import &lt;SpriteKit/SpriteKit.h&gt;
  
  @interface heroTestNode : SKSpriteNode
  @property NSMutableArray *gorillaWalkingFrames;
  -(void)walkingGorilla;
  
  @end
  </code></pre>
  
  <p>And finally, here is how I am instantiating it:</p>
  
  <pre><code>heroTestNode *test = [[heroTestNode alloc] init];
  test.position =  CGPointMake((self.frame.size.width/2)+30,self.frame.size.height/3);
  [self addChild:test];
  [test walkingGorilla]; // this is causing the SIGKILL 9 crash
  </code></pre>
  
  <p>This causes the it to freeze "compressing" the view into the bottom left corner of my iPad and going unresponsive. I have no idea what would be causing this.</p>