[PATCH] wined3d: correctly guess_card_vendor() for gallium r600 drivers
Brian Paterni
bpaterni at gmail.com
Sun Nov 7 16:08:04 CST 2010
Hello, I've been receiving a couple "unrecognized GL_VENDOR" fixme's lately and
decided to poke around wine's source. I've found that wined3d_guess_card_vendor
does not return the correct enum for people running mesa's r600g driver, and now
that r600g returns "AMD <gpu chip>" as part of openGL's renderer string, we can
easily use that to check for AMD (ATI) hardware:
---
dlls/wined3d/directx.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 32d2431..3908c5f 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -1373,11 +1373,10 @@ static enum wined3d_pci_vendor wined3d_guess_card_vendor(const char *gl_vendor_s
if (strstr(gl_vendor_string, "ATI")
|| strstr(gl_vendor_string, "Advanced Micro Devices, Inc.")
|| strstr(gl_vendor_string, "X.Org R300 Project")
+ || (strstr(gl_vendor_string, "X.Org") && strstr(gl_renderer, "AMD"))
|| strstr(gl_renderer, "R100")
|| strstr(gl_renderer, "R200")
- || strstr(gl_renderer, "R300")
- || strstr(gl_renderer, "R600")
- || strstr(gl_renderer, "R700"))
+ || strstr(gl_renderer, "R300"))
return HW_VENDOR_ATI;
if (strstr(gl_vendor_string, "Intel(R)")
--
1.7.2.3
More information about the wine-patches
mailing list