https://bugs.winehq.org/show_bug.cgi?id=38488
Bug ID: 38488 Summary: Wrong taces in functions *_invalidate_location Product: Wine Version: 1.7.41 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: isakov-sl@bk.ru Distribution: ---
I got a plenty of messages like fixme:d3d:wined3d_debug_location Unrecognized location flag(s) 0xfffffc00. fixme:d3d:wined3d_debug_location Unrecognized location flag(s) 0xfffffc00. fixme:d3d:wined3d_debug_location Unrecognized location flag(s) 0xfffffc00. fixme:d3d:wined3d_debug_location Unrecognized location flag(s) 0xfffffc00.
It rises because the function wined3d_volume_invalidate_location() is used with reversed parameter For example dlls/wined3d/device.c: wined3d_volume_invalidate_location(dst_volume, ~WINED3D_LOCATION_TEXTURE_RGB); The function assumed location and not ~location. ----- void wined3d_volume_invalidate_location(struct wined3d_volume *volume, DWORD location) { TRACE("Volume %p, clearing %s.\n", volume, wined3d_debug_location(location)); volume->locations &= ~location; TRACE("new location flags are %s.\n", wined3d_debug_location(volume->locations)); } ----- Here wined3d_debug_location() will message like above.
Same about wined3d_resource_invalidate_location(struct wined3d_resource *resource, DWORD location)