Re: [PATCH 1/5] wined3d: Check parameters directly in wined3d_surface_update_desc.
On 7 January 2014 13:53, Stefan Dösinger <stefan(a)codeweavers.com> wrote:
--- dlls/wined3d/surface.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c index 2fca299..9155c6b 100644 --- a/dlls/wined3d/surface.c +++ b/dlls/wined3d/surface.c @@ -2810,15 +2810,17 @@ HRESULT CDECL wined3d_surface_update_desc(struct wined3d_surface *surface, struct wined3d_device *device = surface->resource.device; const struct wined3d_gl_info *gl_info = &device->adapter->gl_info; const struct wined3d_format *format = wined3d_get_format(gl_info, format_id); - UINT resource_size = wined3d_format_calculate_size(format, device->surface_alignment, width, height, 1); BOOL create_dib = FALSE; HRESULT hr;
TRACE("surface %p, width %u, height %u, format %s, multisample_type %#x, multisample_quality %u.\n", surface, width, height, debug_d3dformat(format_id), multisample_type, multisample_type);
- if (!resource_size) + if (!width || !height || !format) That's not quite equivalent. For example, a format like WINED3DFMT_NVDB has a zero format->byte_count.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Am 2014-01-07 15:45, schrieb Henri Verbeet:
That's not quite equivalent. For example, a format like WINED3DFMT_NVDB has a zero format->byte_count. Good point. So I'll have to run wined3d_format_calculate_size even in cases where a custom pitch is used...
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBAgAGBQJSzBh2AAoJEN0/YqbEcdMwzVAP/0q0D42tWvaFv1zJvcYx0baV G5ozxc+tzHetiZ2en7i638umMc6f+NaIFZ/WgULCocb9Fz7fCRFk0R6+HxKYoCpN zZHgrDR7y0THZ1CZcaA0orU9x6Y4wJmpr5EhpPqkIZq9dMdWYust6d0pBE25aZQk Rgz2yIL09jlLeqvJUustm9l6wVeMjf4WQKDXvUK8kzQ7TpanT3juL1kcgIvGRGft vwxpVgmWrwkkXbqRilU+RDLJy6cuQ6IpIFG34H63Bz6xxUchBIw/wWSTgQPv+4eX WMMzDAQPuk1yAhDDCqke4arE19eKCaljH/r2k9x8wFk/xrymuFA+O+Z1fgH64Z+4 j2Gw8RmBZ6xl/w1J8b7CL4h23mwL70wcR+HFcXZawQX6raWt9Zuo9wROqnY4BMZ/ 5KiogutsyAVSY2QQh34d0+zvtllh1ZRaJD0AUKK7ROi2tz0PmcshmYiMWK0XPz7s rDcqLX2AHGh6oohJ6QpRJ+FQgeUtCwpoVpgNjQ23rRUbQI8gDqPDO2xzAq58Vqd2 nMq0VUPf+3Uz2armsrtpjesa540JHOHk51/hXF9vEbYgLxa3SMZsNZ16LMAOjGm4 QsGv8gt+M/gJpepeXeMNvxL9oX2eOANCU17f1h8tVYbjvR8A/XdicV6AC3yCu53Z tpt4C+WXmMYbQYEZPsfP =drdo -----END PGP SIGNATURE-----
participants (2)
-
Henri Verbeet -
Stefan Dösinger