2013/8/26 Stefan Dösinger stefan@codeweavers.com:
Try 2: *) Require only GPU access for buffers *) Reduce number of checkGLcall invocations
*) Remove a return from an ERR case
dlls/wined3d/utils.c | 1 + dlls/wined3d/volume.c | 168 ++++++++++++++++++++++++++++++++++++----- dlls/wined3d/wined3d_private.h | 7 +- 3 files changed, 157 insertions(+), 19 deletions(-)
case WINED3D_LOCATION_BUFFER:if (!volume->pbo || !(volume->flags & WINED3D_VFLAG_PBO))ERR("Trying to load WINED3D_LOCATION_BUFFER without setting it up first.\n");if (volume->locations & WINED3D_LOCATION_DISCARDED){TRACE("Volume previously discarded, nothing to do.\n");wined3d_volume_invalidate_location(volume, WINED3D_LOCATION_DISCARDED);}else if (volume->locations & WINED3D_LOCATION_TEXTURE_RGB){struct wined3d_bo_address data = {volume->pbo, NULL};volume_bind_and_dirtify(volume, context);wined3d_volume_download_data(volume, context, &data);}else{FIXME("Implement WINED3D_LOCATION_SYSMEM loading from %s.\n",wined3d_debug_location(volume->locations));return;}wined3d_volume_validate_location(volume, WINED3D_LOCATION_BUFFER);break;
Not really an actual review, but that FIXME looks wrong (copy-paste remnant probably).