[Mesa-dev] [PATCH 2/2] clover: Destory pipe_screen when device does not support compute
Emil Velikov
emil.l.velikov at gmail.com
Thu May 8 11:06:46 PDT 2014
On 09/05/14 02:17, Tom Stellard wrote:
> ---
> src/gallium/state_trackers/clover/core/device.cpp | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/gallium/state_trackers/clover/core/device.cpp b/src/gallium/state_trackers/clover/core/device.cpp
> index 2f84677..70b5caf 100644
> --- a/src/gallium/state_trackers/clover/core/device.cpp
> +++ b/src/gallium/state_trackers/clover/core/device.cpp
> @@ -42,8 +42,10 @@ namespace {
> device::device(clover::platform &platform, pipe_loader_device *ldev) :
> platform(platform), ldev(ldev) {
> pipe = pipe_loader_create_screen(ldev, PIPE_SEARCH_DIR);
> - if (!pipe || !pipe->get_param(pipe, PIPE_CAP_COMPUTE))
> + if (!pipe || !pipe->get_param(pipe, PIPE_CAP_COMPUTE)) {
> + pipe->destroy(pipe);
> throw error(CL_INVALID_DEVICE);
> + }
> }
>
Hi Tom,
AFAICS this will crash when we fail to create the pipe_screen(pipe is NULL).
-Emil
> device::~device() {
>
More information about the mesa-dev
mailing list