From 5ab557ad52d1502dd58537ace9e4d4abd3c46095 Mon Sep 17 00:00:00 2001 From: Patrick Sharp <psharp.x13@gmail.com> Date: Thu, 18 Aug 2016 20:04:55 -0600 Subject: [PATCH] Fixed dispose in KernelRunner.java dispose() disposes of the jniContextHandle, however the seenBinaryKeys still reported that the handle is still available. This resulted in a kernel being unable to recompile after any of it's predecessors have been disposed. Clearing this set fixes this issue. --- .../src/java/com/amd/aparapi/internal/kernel/KernelRunner.java | 1 + 1 file changed, 1 insertion(+) diff --git a/com.amd.aparapi/src/java/com/amd/aparapi/internal/kernel/KernelRunner.java b/com.amd.aparapi/src/java/com/amd/aparapi/internal/kernel/KernelRunner.java index 9bb09c29..d99809e9 100644 --- a/com.amd.aparapi/src/java/com/amd/aparapi/internal/kernel/KernelRunner.java +++ b/com.amd.aparapi/src/java/com/amd/aparapi/internal/kernel/KernelRunner.java @@ -190,6 +190,7 @@ public class KernelRunner extends KernelRunnerJNI{ public synchronized void dispose() { if (kernel.isRunningCL()) { disposeJNI(jniContextHandle); + seenBinaryKeys.clear(); } // We are using a shared pool, so there's no need no shutdown it when kernel is disposed // threadPool.shutdownNow(); -- GitLab