Browse Source

Merge commit '69401b9' into bfgminer-3.5.x

Luke Dashjr 11 years ago
parent
commit
8f20f8b8db
1 changed files with 4 additions and 0 deletions
  1. 4 0
      ocl.c

+ 4 - 0
ocl.c

@@ -530,6 +530,7 @@ _clState *initCl(unsigned int gpu, char *name, size_t nameSize)
 	find = strstr(extensions, camo);
 	find = strstr(extensions, camo);
 	if (find)
 	if (find)
 		clState->hasBitAlign = true;
 		clState->hasBitAlign = true;
+	free(extensions);
 
 
 	/* Check for OpenCL >= 1.0 support, needed for global offset parameter usage. */
 	/* Check for OpenCL >= 1.0 support, needed for global offset parameter usage. */
 	char * devoclver = malloc(1024);
 	char * devoclver = malloc(1024);
@@ -543,6 +544,7 @@ _clState *initCl(unsigned int gpu, char *name, size_t nameSize)
 	find = strstr(devoclver, ocl10);
 	find = strstr(devoclver, ocl10);
 	if (!find)
 	if (!find)
 		clState->hasOpenCL11plus = true;
 		clState->hasOpenCL11plus = true;
+	free(devoclver);
 
 
 	status = clGetDeviceInfo(devices[gpu], CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT, sizeof(cl_uint), (void *)&preferred_vwidth, NULL);
 	status = clGetDeviceInfo(devices[gpu], CL_DEVICE_PREFERRED_VECTOR_WIDTH_INT, sizeof(cl_uint), (void *)&preferred_vwidth, NULL);
 	if (status != CL_SUCCESS) {
 	if (status != CL_SUCCESS) {
@@ -886,6 +888,7 @@ build:
 		char *log = malloc(logSize);
 		char *log = malloc(logSize);
 		status = clGetProgramBuildInfo(clState->program, devices[gpu], CL_PROGRAM_BUILD_LOG, logSize, log, NULL);
 		status = clGetProgramBuildInfo(clState->program, devices[gpu], CL_PROGRAM_BUILD_LOG, logSize, log, NULL);
 		applog(LOG_ERR, "%s", log);
 		applog(LOG_ERR, "%s", log);
+		free(log);
 		return NULL;
 		return NULL;
 	}
 	}
 
 
@@ -1011,6 +1014,7 @@ built:
 			char *log = malloc(logSize);
 			char *log = malloc(logSize);
 			status = clGetProgramBuildInfo(clState->program, devices[gpu], CL_PROGRAM_BUILD_LOG, logSize, log, NULL);
 			status = clGetProgramBuildInfo(clState->program, devices[gpu], CL_PROGRAM_BUILD_LOG, logSize, log, NULL);
 			applog(LOG_ERR, "%s", log);
 			applog(LOG_ERR, "%s", log);
+			free(log);
 			return NULL;
 			return NULL;
 		}
 		}
 	}
 	}