2013-09-05  Shilpa Shri  <shilpa.shri@samsung.com>

        Negative values for rowPitch and slicePitch crashes safari.
        Issue #284

        Sending a negative value to rowPitch and/or slicePitch calculates a negative offset.
        This tries to read/write from buffer out of bounds and thus API which uses this causes crash.
        This is not handled by OpenCL. So WebCL needs to add a check for rowPitch being positive.

        Reviewed by Antonio.

        Following conformance test files are fixed:
        conformance/buffimgs/cl_commandQueue_enqueueWriteBufferRect.html
        conformance/buffimgs/cl_commandQueue_enqueueReadImage.html
        conformance/buffimgs/cl_commandQueue_enqueueReadBufferRect.html
        conformance/buffimgs/cl_commandQueue_enqueueWriteImage.html
        conformance/buffimgs/cl_commandQueue_enqueueCopyBufferRect.html

        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::enqueueWriteBufferRect):
        (WebCore::WebCLCommandQueue::enqueueReadImage):
        (WebCore::WebCLCommandQueue::enqueueReadBufferRect):
        (WebCore::WebCLCommandQueue::enqueueWriteImage):
        (WebCore::WebCLCommandQueue::enqueueCopyBufferRect):
2013-09-13  Sharath Kamath  <s.kamath@samsung.com>

        Redefine CLenum as unsigned long and error codes to CLint.

        Issue #220

        Reviewed by Antonio.

        As per Khronos bug[https://www.khronos.org/bugzilla/show_bug.cgi?id=958] CLenum needs to be
        unsigned long to hold OpenCL DEVICE_TYPE_ALL enum member.
        Also all the negetive members of Enum in WebCL interface will be changed to CLint.

        This also fixes the issue with getDevices(DEVICE_TYPE_ALL).

        Changing all IDL files to use CLenum, CLint, CLuint, CLboolean & CLtype
        instead of respective native types.

        cl_platform_getDevices.html in
        https://github.com/SRA-SiliconValley/webkit-webcl-conformance.

        * Modules/webcl/WebCL.idl:
        * Modules/webcl/WebCLBuffer.idl:
        * Modules/webcl/WebCLCommandQueue.idl:
        * Modules/webcl/WebCLContext.idl:
        * Modules/webcl/WebCLContextProperties.idl:
        * Modules/webcl/WebCLDevice.idl:
        * Modules/webcl/WebCLEvent.idl:
        * Modules/webcl/WebCLException.idl:
        * Modules/webcl/WebCLGL.idl:
        * Modules/webcl/WebCLGLContext.idl:
        * Modules/webcl/WebCLGLImage.idl:
        * Modules/webcl/WebCLGLObjectInfo.idl:
        * Modules/webcl/WebCLImageDescriptor.idl:
        * Modules/webcl/WebCLInputChecker.cpp: Changing all the enum values from int to unsigned long.
        (WebCore::WebCLInputChecker::isValidDeviceType):
        (WebCore::WebCLInputChecker::isValidDeviceInfoType):
        (WebCore::WebCLInputChecker::isValidMemoryObjectFlag):
        (WebCore::WebCLInputChecker::isValidAddressingMode):
        (WebCore::WebCLInputChecker::isValidFilterMode):
        (WebCore::WebCLInputChecker::isValidChannelOrder):
        (WebCore::WebCLInputChecker::isValidChannelType):
        (WebCore::WebCLInputChecker::isValidCommandQueueProperty):
        (WebCore::WebCLInputChecker::isValidGLTextureInfo):
        * Modules/webcl/WebCLInputChecker.h:
        * Modules/webcl/WebCLKernel.idl:
        * Modules/webcl/WebCLKernelArgumentTypes.idl:
        * Modules/webcl/WebCLMemoryObject.idl:
        * Modules/webcl/WebCLPlatform.idl:
        * Modules/webcl/WebCLProgram.idl:
        * Modules/webcl/WebCLSampler.idl:
Week 35

Demos
  * Nbody: enable device switch using radio buttons
  * PathIntegrals: disable CL<->GL interop when CPU is used

Layout Tests
  * Changed data structure in Image Test
  * Make a rebaseline in webcl-test-arg-types-const-expected.txt
  * Make a progression in webcl-test-instanceof.html

Build
  * Makes it possible to build WebCL without WebGL support
Week 37

Layout Tests
 * Skip WebCL stress tests when the WTR is executed.
 * New Layout Test to Renderbuffer Interoperability