Browse Source

Merge branch 'master' into reorder

Con Kolivas 14 years ago
parent
commit
310f55d0c9
1 changed files with 18 additions and 0 deletions
  1. 18 0
      ocl.c

+ 18 - 0
ocl.c

@@ -465,6 +465,12 @@ build:
 		return NULL;
 	}
 
+	clRetainProgram(clState->program);
+	if (status != CL_SUCCESS) {
+		applog(LOG_ERR, "Error: Retaining Program (clRetainProgram)");
+		return NULL;
+	}
+
 	/* create a cl program executable for all the devices specified */
 	char *CompilerOptions = calloc(1, 256);
 
@@ -588,6 +594,12 @@ build:
 			applog(LOG_ERR, "Error: Loading Binary into cl_program (clCreateProgramWithBinary)");
 			return NULL;
 		}
+
+		clRetainProgram(clState->program);
+		if (status != CL_SUCCESS) {
+			applog(LOG_ERR, "Error: Retaining Program (clRetainProgram)");
+			return NULL;
+		}
 	}
 
 	free(source);
@@ -627,6 +639,12 @@ built:
 			applog(LOG_INFO, "%s", log);
 			return NULL;
 		}
+
+		clRetainProgram(clState->program);
+		if (status != CL_SUCCESS) {
+			applog(LOG_ERR, "Error: Retaining Program (clRetainProgram)");
+			return NULL;
+		}
 	}
 
 	/* get a kernel object handle for a kernel with the given name */