Fix two bugs related to opencl context.

1. As getDevice will implicitly call setDevice, in getContext we should not need to call it again.
2. Fix an incorrect type casting.
This commit is contained in:
Peng Xiao 2013-06-12 13:55:20 +08:00
parent 98f6a4a615
commit d9ab22e4ed

View File

@ -930,8 +930,6 @@ namespace cv
clCxt.reset(new Context);
std::vector<Info> oclinfo;
CV_Assert(getDevice(oclinfo, CVCL_DEVICE_TYPE_ALL) > 0);
oclinfo[0].impl->setDevice(0, 0, 0);
clCxt.get()->impl = oclinfo[0].impl->copy();
*((volatile int*)&val) = 1;
}
@ -1056,7 +1054,7 @@ BOOL WINAPI DllMain( HINSTANCE, DWORD fdwReason, LPVOID )
Context* cv_ctx = Context::getContext();
if(cv_ctx)
{
cl_context ctx = (cl_context)&(cv_ctx->impl->oclcontext);
cl_context ctx = cv_ctx->impl->oclcontext;
if(ctx)
openCLSafeCall(clReleaseContext(ctx));
}