diff --git a/com.amd.aparapi/src/java/com/amd/aparapi/KernelRunner.java b/com.amd.aparapi/src/java/com/amd/aparapi/KernelRunner.java
index ddeb7a223629164a8c23b43fa064fad40d29418b..fc4bdc9fbc59f3af6390309903e1305c5c4ece1c 100644
--- a/com.amd.aparapi/src/java/com/amd/aparapi/KernelRunner.java
+++ b/com.amd.aparapi/src/java/com/amd/aparapi/KernelRunner.java
@@ -1381,6 +1381,9 @@ class KernelRunner{
                   } else {
                      // We fetch the first CPU device 
                      openCLDevice = (OpenCLDevice) OpenCLDevice.firstCPU();
+                     if (openCLDevice == null){
+                        return warnFallBackAndExecute(_entrypointName, _range, _passes, "CPU request can't be honored not CPU device");
+                     }
                   }
                } else {
                   if (openCLDevice.getType() == Device.TYPE.GPU) {