mirror of
https://github.com/KhronosGroup/OpenCL-CTS.git
synced 2026-03-19 06:09:01 +00:00
Fix minor resource leaks in test_api. (#735)
Added some missing clProgramWrapper/clkernelWrapper, to avoid resource leaks. Signed-off-by: John Kesapides <john.kesapides@arm.com>
This commit is contained in:
@@ -38,8 +38,8 @@ const char *kernel_with_bool[] = {
|
|||||||
int test_bool_type(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements)
|
int test_bool_type(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements)
|
||||||
{
|
{
|
||||||
|
|
||||||
cl_program program;
|
clProgramWrapper program;
|
||||||
cl_kernel kernel;
|
clKernelWrapper kernel;
|
||||||
|
|
||||||
int err = create_single_kernel_helper(context,
|
int err = create_single_kernel_helper(context,
|
||||||
&program,
|
&program,
|
||||||
|
|||||||
@@ -5585,15 +5585,14 @@ const char * long_arg_info[][72] = {
|
|||||||
template<typename arg_info_t>
|
template<typename arg_info_t>
|
||||||
int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, cl_uint lines_count, arg_info_t arg_info, size_t total_kernels_in_program) {
|
int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, cl_uint lines_count, arg_info_t arg_info, size_t total_kernels_in_program) {
|
||||||
|
|
||||||
cl_program program;
|
|
||||||
cl_kernel kernel;
|
|
||||||
const size_t max_name_len = 512;
|
const size_t max_name_len = 512;
|
||||||
cl_char name[ max_name_len ];
|
cl_char name[ max_name_len ];
|
||||||
cl_uint arg_count, numArgs;
|
cl_uint arg_count, numArgs;
|
||||||
size_t i, j, size;
|
size_t i, j, size;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
program = clCreateProgramWithSource( context, lines_count, kernel_args, NULL, &error );
|
clProgramWrapper program =
|
||||||
|
clCreateProgramWithSource(context, lines_count, kernel_args, NULL, &error);
|
||||||
if ( program == NULL || error != CL_SUCCESS )
|
if ( program == NULL || error != CL_SUCCESS )
|
||||||
{
|
{
|
||||||
print_error( error, "Unable to create required arguments kernel program" );
|
print_error( error, "Unable to create required arguments kernel program" );
|
||||||
@@ -5704,7 +5703,7 @@ int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, c
|
|||||||
{
|
{
|
||||||
int kernel_rc = 0;
|
int kernel_rc = 0;
|
||||||
const char* kernel_name = arg_info[ i ][ 0 ];
|
const char* kernel_name = arg_info[ i ][ 0 ];
|
||||||
kernel = clCreateKernel( program, kernel_name, &error );
|
clKernelWrapper kernel = clCreateKernel(program, kernel_name, &error);
|
||||||
if( kernel == NULL || error != CL_SUCCESS )
|
if( kernel == NULL || error != CL_SUCCESS )
|
||||||
{
|
{
|
||||||
log_error( "ERROR: Could not get kernel: %s\n", kernel_name );
|
log_error( "ERROR: Could not get kernel: %s\n", kernel_name );
|
||||||
@@ -5824,8 +5823,6 @@ int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, c
|
|||||||
|
|
||||||
int test_get_kernel_arg_info( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements )
|
int test_get_kernel_arg_info( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements )
|
||||||
{
|
{
|
||||||
clProgramWrapper program;
|
|
||||||
clKernelWrapper kernel;
|
|
||||||
size_t size;
|
size_t size;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
|
|||||||
@@ -4842,15 +4842,14 @@ static const char * half_arg_info[][77] = {
|
|||||||
template<typename arg_info_t>
|
template<typename arg_info_t>
|
||||||
int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, cl_uint lines_count, arg_info_t arg_info, size_t total_kernels_in_program) {
|
int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, cl_uint lines_count, arg_info_t arg_info, size_t total_kernels_in_program) {
|
||||||
|
|
||||||
cl_program program;
|
|
||||||
cl_kernel kernel;
|
|
||||||
const size_t max_name_len = 512;
|
const size_t max_name_len = 512;
|
||||||
cl_char name[ max_name_len ];
|
cl_char name[ max_name_len ];
|
||||||
cl_uint arg_count, numArgs;
|
cl_uint arg_count, numArgs;
|
||||||
size_t i, j, size;
|
size_t i, j, size;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
program = clCreateProgramWithSource( context, lines_count, kernel_args, NULL, &error );
|
clProgramWrapper program =
|
||||||
|
clCreateProgramWithSource(context, lines_count, kernel_args, NULL, &error);
|
||||||
if ( program == NULL || error != CL_SUCCESS )
|
if ( program == NULL || error != CL_SUCCESS )
|
||||||
{
|
{
|
||||||
print_error( error, "Unable to create required arguments kernel program" );
|
print_error( error, "Unable to create required arguments kernel program" );
|
||||||
@@ -4961,7 +4960,7 @@ int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, c
|
|||||||
{
|
{
|
||||||
int kernel_rc = 0;
|
int kernel_rc = 0;
|
||||||
const char* kernel_name = arg_info[ i ][ 0 ];
|
const char* kernel_name = arg_info[ i ][ 0 ];
|
||||||
kernel = clCreateKernel( program, kernel_name, &error );
|
clKernelWrapper kernel = clCreateKernel(program, kernel_name, &error);
|
||||||
if( kernel == NULL || error != CL_SUCCESS )
|
if( kernel == NULL || error != CL_SUCCESS )
|
||||||
{
|
{
|
||||||
log_error( "ERROR: Could not get kernel: %s\n", kernel_name );
|
log_error( "ERROR: Could not get kernel: %s\n", kernel_name );
|
||||||
@@ -5081,8 +5080,6 @@ int test(cl_device_id deviceID, cl_context context, kernel_args_t kernel_args, c
|
|||||||
|
|
||||||
int test_get_kernel_arg_info_compatibility( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements )
|
int test_get_kernel_arg_info_compatibility( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements )
|
||||||
{
|
{
|
||||||
clProgramWrapper program;
|
|
||||||
clKernelWrapper kernel;
|
|
||||||
size_t size;
|
size_t size;
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user