Module: wine Branch: master Commit: 02d30df085515e746e475fef10bd7be8b92c1106 URL: http://source.winehq.org/git/wine.git/?a=commit;h=02d30df085515e746e475fef10...
Author: Hans Leidekker hans@it.vu.nl Date: Sat Dec 23 11:50:47 2006 +0100
usp10: Improve the stub for ScriptBreak.
---
dlls/usp10/usp10.c | 28 ++++++++++++++++++++++++---- 1 files changed, 24 insertions(+), 4 deletions(-)
diff --git a/dlls/usp10/usp10.c b/dlls/usp10/usp10.c index 85fc82d..a1555d8 100644 --- a/dlls/usp10/usp10.c +++ b/dlls/usp10/usp10.c @@ -32,6 +32,7 @@ #include "usp10.h"
#include "wine/debug.h" +#include "wine/unicode.h"
/** * some documentation here: @@ -798,13 +799,32 @@ HRESULT WINAPI ScriptXtoCP(int iX, /*********************************************************************** * ScriptBreak (USP10.@) * + * Retrieve line break information. + * + * PARAMS + * chars [I] Array of characters. + * sa [I] String analysis. + * la [I] Array of logical attribute structures. + * + * RETURNS + * Success: S_OK + * Failure: S_FALSE */ -HRESULT WINAPI ScriptBreak(const WCHAR *pwcChars, int cChars, const SCRIPT_ANALYSIS *psa, - SCRIPT_LOGATTR *psla) +HRESULT WINAPI ScriptBreak(const WCHAR *chars, int count, const SCRIPT_ANALYSIS *sa, SCRIPT_LOGATTR *la) { - FIXME("(%p,%d,%p,%p): stub\n", - pwcChars, cChars, psa, psla); + unsigned int i;
+ FIXME("(%p, %d, %p, %p) stub\n", chars, count, sa, la); + + if (!la) return S_FALSE; + + for (i = 0; i < count; i++) + { + memset(&la[i], 0, sizeof(SCRIPT_LOGATTR)); + + la[i].fWhiteSpace = isspaceW(chars[i]); + la[i].fCharStop = 1; + } return S_OK; }