Sven Baars : d3dx9: Remove unreachable DT_SINGLELINE handling from ID3DXFont_DrawText.

Alexandre Julliard julliard at winehq.org
Wed Nov 18 15:48:00 CST 2020


Module: wine
Branch: master
Commit: a097f54ea1e7e75b78842ceb835f5db5f08fea06
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=a097f54ea1e7e75b78842ceb835f5db5f08fea06

Author: Sven Baars <sbaars at codeweavers.com>
Date:   Tue Nov 17 15:33:32 2020 +0100

d3dx9: Remove unreachable DT_SINGLELINE handling from ID3DXFont_DrawText.

Signed-off-by: Sven Baars <sbaars at codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/d3dx9_36/font.c | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/dlls/d3dx9_36/font.c b/dlls/d3dx9_36/font.c
index f5775384da3..13cffe4c514 100644
--- a/dlls/d3dx9_36/font.c
+++ b/dlls/d3dx9_36/font.c
@@ -512,7 +512,7 @@ static INT WINAPI ID3DXFontImpl_DrawTextA(ID3DXFont *iface, ID3DXSprite *sprite,
 }
 
 static void word_break(HDC hdc, const WCHAR *str, unsigned int *str_len,
-        unsigned int chars_fit, unsigned int *chars_used, DWORD format, SIZE *size)
+        unsigned int chars_fit, unsigned int *chars_used, SIZE *size)
 {
     SCRIPT_LOGATTR *sla;
     SCRIPT_ANALYSIS sa;
@@ -535,7 +535,7 @@ static void word_break(HDC hdc, const WCHAR *str, unsigned int *str_len,
         --i;
 
     /* If the there is no word that fits put in all characters that do fit */
-    if (!sla[i].fSoftBreak || (format & DT_SINGLELINE))
+    if (!sla[i].fSoftBreak)
         i = chars_fit;
 
     *chars_used = i;
@@ -571,20 +571,13 @@ static const WCHAR *read_line(HDC hdc, const WCHAR *str, unsigned int *count,
     num_fit = 0;
     GetTextExtentExPointW(hdc, dest, *dest_len, width, &num_fit, NULL, size);
 
-    if (num_fit < *dest_len)
+    if (num_fit < *dest_len && (format & DT_WORDBREAK))
     {
-        if (format & DT_WORDBREAK)
-        {
-            unsigned int chars_used;
+        unsigned int chars_used;
 
-            word_break(hdc, dest, dest_len, num_fit, &chars_used, format, size);
-            *count = orig_count - chars_used;
-            i = chars_used;
-        }
-        else if (format & DT_SINGLELINE)
-        {
-            *count = 0;
-        }
+        word_break(hdc, dest, dest_len, num_fit, &chars_used, size);
+        *count = orig_count - chars_used;
+        i = chars_used;
     }
 
     if (*count && str[i] == '\n')




More information about the wine-cvs mailing list