RenderTexture Custom Draw Bug

Hi, I’m working on a game where I do some drawing on RenderTexture and then write it on some polygon shape, it’s working fine on any other device other than iPhone 5s, and also it was working before I updated xcode, any guesses what may cause that problem?
Thanks for attention.
here is the code below:

void JellyNode::onDraw(const Mat4 &transform, uint32_t flags)
    {
    Sprite* _sprite = Sprite::createWithTexture(_renderTexture->getSprite()->getTexture());
    
    getGLProgram()->use();
    getGLProgram()->setUniformsForBuiltins(transform);

    GL::blendFunc( _sprite->getBlendFunc().src, _sprite->getBlendFunc().dst );
    
    GL::enableVertexAttribs(GL::VERTEX_ATTRIB_FLAG_POS_COLOR_TEX );
    
    GL::bindTexture2D( _sprite->getTexture()->getName() );
    
    glVertexAttribPointer( GLProgram::VERTEX_ATTRIB_POSITION, 2, GL_FLOAT, GL_FALSE, sizeof(_vertexData[0]) , &_vertexData[0].vertices);
    glVertexAttribPointer( GLProgram::VERTEX_ATTRIB_TEX_COORD, 2, GL_FLOAT, GL_FALSE, sizeof(_vertexData[0]), &_vertexData[0].texCoords);
    glVertexAttribPointer( GLProgram::VERTEX_ATTRIB_COLOR, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(_vertexData[0]), &_vertexData[0].colors);

    glDrawArrays(GL_TRIANGLE_FAN, 0, _allVertexCount);
    CC_INCREMENT_GL_DRAWN_BATCHES_AND_VERTICES(1,_allVertexCount);
}

void JellyNode::draw(Renderer *renderer, const Mat4 &transform, uint32_t flags)
{
    if( ! _vertexData || ! _sprite)
        return;
    
    _renderTexture->beginWithClear(255, 255, 255, 0);
    layer->setPosition(_renderTexture->getSprite()->getContentSize() / 2);
    layer->visit();
    _renderTexture->end();
    
    _customCommand.init(_globalZOrder);
    _customCommand.func = CC_CALLBACK_0(JellyNode::onDraw, this, transform, flags);
    renderer->addCommand(&_customCommand);
}