diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c index 68d6cf0ae97edac6506428ab906f1ea49ccfa314..4ca4f46741f9c34a966848ab1ed86aa63f47612b 100644 --- a/dlls/d3d11/device.c +++ b/dlls/d3d11/device.c @@ -1054,7 +1054,7 @@ static void STDMETHODCALLTYPE d3d11_immediate_context_UpdateSubresource(ID3D11De wined3d_resource = wined3d_resource_from_d3d11_resource(resource); wined3d_mutex_lock(); wined3d_device_update_sub_resource(device->wined3d_device, wined3d_resource, - subresource_idx, box ? &wined3d_box : NULL, data, row_pitch, depth_pitch); + subresource_idx, box ? &wined3d_box : NULL, data, row_pitch, depth_pitch, 0); wined3d_mutex_unlock(); } diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c index 3f4552f2bbe53c8e3b80a78b25c423d85a9239c8..e06d156c0b3f4a9cc51424ce6cbba1c2130d4e22 100644 --- a/dlls/wined3d/buffer.c +++ b/dlls/wined3d/buffer.c @@ -1407,7 +1407,7 @@ static HRESULT buffer_init(struct wined3d_buffer *buffer, struct wined3d_device if (data) wined3d_device_update_sub_resource(device, &buffer->resource, - 0, NULL, data->data, data->row_pitch, data->slice_pitch); + 0, NULL, data->data, data->row_pitch, data->slice_pitch, 0); return WINED3D_OK; } diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index 9906f74568321bf2029401492a45dec45cd0c4c6..0f590c40fec9d5c014174eb212a943d5ed61564d 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -4299,13 +4299,17 @@ HRESULT CDECL wined3d_device_copy_sub_resource_region(struct wined3d_device *dev void CDECL wined3d_device_update_sub_resource(struct wined3d_device *device, struct wined3d_resource *resource, unsigned int sub_resource_idx, const struct wined3d_box *box, const void *data, unsigned int row_pitch, - unsigned int depth_pitch) + unsigned int depth_pitch, unsigned int flags) { unsigned int width, height, depth; struct wined3d_box b; - TRACE("device %p, resource %p, sub_resource_idx %u, box %s, data %p, row_pitch %u, depth_pitch %u.\n", - device, resource, sub_resource_idx, debug_box(box), data, row_pitch, depth_pitch); + TRACE("device %p, resource %p, sub_resource_idx %u, box %s, data %p, row_pitch %u, depth_pitch %u, " + "flags %#x.\n", + device, resource, sub_resource_idx, debug_box(box), data, row_pitch, depth_pitch, flags); + + if (flags) + FIXME("Ignoring flags %#x.\n", flags); if (resource->type == WINED3D_RTYPE_BUFFER) { diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index 0b0545394cc79d6c797e7b0705b0f357d8d940db..91c703c970fded749cb582bdd17edf51ca965559 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -3392,7 +3392,7 @@ HRESULT CDECL wined3d_texture_create(struct wined3d_device *device, const struct for (i = 0; i < sub_count; ++i) { wined3d_device_update_sub_resource(device, &object->resource, - i, NULL, data[i].data, data[i].row_pitch, data[i].slice_pitch); + i, NULL, data[i].data, data[i].row_pitch, data[i].slice_pitch, 0); } } diff --git a/dlls/wined3d/wined3d.spec b/dlls/wined3d/wined3d.spec index 7a8cf20381a4d2fd96efb98778483fbd13220ff6..db50a442951f131b11dd98fda19d2c2f703ab804 100644 --- a/dlls/wined3d/wined3d.spec +++ b/dlls/wined3d/wined3d.spec @@ -200,7 +200,7 @@ @ cdecl wined3d_device_show_cursor(ptr long) @ cdecl wined3d_device_uninit_3d(ptr) @ cdecl wined3d_device_uninit_gdi(ptr) -@ cdecl wined3d_device_update_sub_resource(ptr ptr long ptr ptr long long) +@ cdecl wined3d_device_update_sub_resource(ptr ptr long ptr ptr long long long) @ cdecl wined3d_device_update_texture(ptr ptr ptr) @ cdecl wined3d_device_validate_device(ptr ptr) diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h index bb4ad4852a79ab51ff285ef0850a62f1e3255853..e15269f3b26dd8327c7cd84f46765de81e4f07c1 100644 --- a/include/wine/wined3d.h +++ b/include/wine/wined3d.h @@ -2466,7 +2466,7 @@ HRESULT __cdecl wined3d_device_uninit_3d(struct wined3d_device *device); HRESULT __cdecl wined3d_device_uninit_gdi(struct wined3d_device *device); void __cdecl wined3d_device_update_sub_resource(struct wined3d_device *device, struct wined3d_resource *resource, unsigned int sub_resource_idx, const struct wined3d_box *box, const void *data, unsigned int row_pitch, - unsigned int depth_pitch); + unsigned int depth_pitch, unsigned int flags); HRESULT __cdecl wined3d_device_update_texture(struct wined3d_device *device, struct wined3d_texture *src_texture, struct wined3d_texture *dst_texture); HRESULT __cdecl wined3d_device_validate_device(const struct wined3d_device *device, DWORD *num_passes);