2013-11-14  Igor Oliveira  <igor.o@sisa.samsung.com>

        WeCLKernel might hold a dangling backpoint to WebCLProgram
        Issue #335

        WebCL objects can be garbage collected, when it happens
        some objects hold a dangling backpoint to those garbage
        collected objects and the browser crashes.

        This patch fixes the behavior described above using the
        following logic: if an object has a parent, it keeps  a
        strong reference of his parent. This logic mimics OpenCL
        behavior.

        Reviewed by Antonio.

        * Modules/webcl/WebCLBuffer.cpp:
        (WebCore::WebCLBuffer::createSubBuffer):
        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::getInfo):
        * Modules/webcl/WebCLCommandQueue.h:
        * Modules/webcl/WebCLEvent.cpp:
        (WebCore::WebCLEvent::getInfo):
        * Modules/webcl/WebCLEvent.h:
        * Modules/webcl/WebCLKernel.cpp:
        (WebCore::WebCLKernel::getInfo):
        * Modules/webcl/WebCLKernel.h:
        * Modules/webcl/WebCLMemoryObject.cpp:
        (WebCore::WebCLMemoryObject::getInfo):
        * Modules/webcl/WebCLMemoryObject.h:
        * Modules/webcl/WebCLProgram.cpp:
        (WebCore::WebCLProgram::getInfo):
        (WebCore::WebCLProgram::createKernel):
        (WebCore::WebCLProgram::createKernelsInProgram):
        * Modules/webcl/WebCLProgram.h:
        * Modules/webcl/WebCLSampler.cpp:
        (WebCore::WebCLSampler::getInfo):
        * Modules/webcl/WebCLSampler.h: