[PATCH] d3dx9: Remove a recursive call to ID3DXFont_DrawTextW when no rect is specified.

Matteo Bruni mbruni at codeweavers.com
Tue Mar 24 08:05:14 CDT 2020


From: Sven Baars <sbaars at codeweavers.com>

Signed-off-by: Sven Baars <sbaars at codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
 dlls/d3dx9_36/font.c | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/dlls/d3dx9_36/font.c b/dlls/d3dx9_36/font.c
index 3645903367b..54b1574bb1f 100644
--- a/dlls/d3dx9_36/font.c
+++ b/dlls/d3dx9_36/font.c
@@ -629,17 +629,8 @@ static INT WINAPI ID3DXFontImpl_DrawTextW(ID3DXFont *iface, ID3DXSprite *sprite,
     if (format & DT_SINGLELINE)
         format &= ~DT_WORDBREAK;
 
-    if (!rect)
-    {
-        y = ID3DXFont_DrawTextW(iface, NULL, string, count, &textrect, format | DT_CALCRECT, 0);
-
-        if (format & DT_CALCRECT)
-            return y;
-    }
-    else
-    {
+    if (rect)
         textrect = *rect;
-    }
 
     x = textrect.left;
     y = textrect.top;
@@ -716,7 +707,7 @@ static INT WINAPI ID3DXFontImpl_DrawTextW(ID3DXFont *iface, ID3DXSprite *sprite,
             break;
     }
 
-    if (format & DT_CALCRECT)
+    if (format & DT_CALCRECT && rect)
     {
         *rect = textrect;
 
-- 
2.24.1




More information about the wine-devel mailing list