summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/cl_mem.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/cl_mem.c b/src/cl_mem.c
index 5243efec..d2e502d1 100644
--- a/src/cl_mem.c
+++ b/src/cl_mem.c
@@ -1127,7 +1127,9 @@ cl_mem_delete(cl_mem mem)
cl_buffer_unreference(mem->bo);
}
- if (mem->is_userptr && (mem->flags & CL_MEM_ALLOC_HOST_PTR))
+ if (mem->is_userptr &&
+ (mem->flags & CL_MEM_ALLOC_HOST_PTR) &&
+ (mem->type != CL_MEM_SUBBUFFER_TYPE))
cl_free(mem->host_ptr);
cl_free(mem);