diff --git a/src/wrapper/wrap_cl.hpp b/src/wrapper/wrap_cl.hpp
index 9a33e6d93c75bc8db74996c1880ffe2135929ad1..8e968f58ed92c187a8afc754a5813b8c1a6f59ba 100644
--- a/src/wrapper/wrap_cl.hpp
+++ b/src/wrapper/wrap_cl.hpp
@@ -646,6 +646,13 @@ namespace pyopencl
                 switch (key)
                 {
                   case CL_CONTEXT_PLATFORM:
+                    {
+                      value = py::object(
+                          handle_from_new_ptr(new platform(
+                            reinterpret_cast<cl_platform_id>(result[i+1]))));
+                      break;
+                    }
+
 #if defined(cl_khr_gl_sharing) && (cl_khr_gl_sharing >= 1)
                   case CL_GL_CONTEXT_KHR:
                   case CL_EGL_DISPLAY_KHR:
@@ -653,11 +660,8 @@ namespace pyopencl
                   case CL_WGL_HDC_KHR:
                   case CL_CGL_SHAREGROUP_KHR:
 #endif
-                    {
-                      value = py::object(
-                          handle_from_new_ptr(new platform(
-                            reinterpret_cast<cl_platform_id>(result[i+1]))));
-                    }
+                    value = py::object(result[i+1]);
+                    break;
 
                   case 0:
                     break;