diff options
author | Eric Anholt <eric@anholt.net> | 2009-09-24 20:03:21 -0700 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2009-09-24 20:04:42 -0700 |
commit | 126d62edd18f22ff9e744efea81e0383cd0a19c5 (patch) | |
tree | 6e605013bba4f53827b400e8346b70becd4bad10 /src/mesa/drivers/dri/intel | |
parent | 1730b8db1237485778abdc4ae37e122414b5423b (diff) |
i915: Fix GetBufferSubData in the case of a system-memory BO.
Bug #23760 (crashes in wine)
Diffstat (limited to 'src/mesa/drivers/dri/intel')
-rw-r--r-- | src/mesa/drivers/dri/intel/intel_buffer_objects.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_buffer_objects.c b/src/mesa/drivers/dri/intel/intel_buffer_objects.c index 2e6b77824d..db0de0343a 100644 --- a/src/mesa/drivers/dri/intel/intel_buffer_objects.c +++ b/src/mesa/drivers/dri/intel/intel_buffer_objects.c @@ -209,7 +209,10 @@ intel_bufferobj_get_subdata(GLcontext * ctx, struct intel_buffer_object *intel_obj = intel_buffer_object(obj); assert(intel_obj); - dri_bo_get_subdata(intel_obj->buffer, offset, size, data); + if (intel_obj->sys_buffer) + memcpy(data, (char *)intel_obj->sys_buffer + offset, size); + else + dri_bo_get_subdata(intel_obj->buffer, offset, size, data); } |