Differences From Artifact [a70e4c08c60d829b]:
- File
src/win32/usp10.d
- 2015-04-21 10:46:55 - part of checkin [4e2933c620] on branch trunk - Rebased to the latest verson dmd 2.067. Not yet verified the outcome. (user: kinaba) [annotate]
To Artifact [cce453ef0465bd4e]:
- File
src/win32/usp10.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
282 282
283 283
284 /* Uniscribe Functions 284 /* Uniscribe Functions
285 * http://msdn2.microsoft.com/library/ms776469 */ 285 * http://msdn2.microsoft.com/library/ms776469 */
286 extern (Windows) 286 extern (Windows)
287 { 287 {
288 HRESULT ScriptFreeCache(SCRIPT_CACHE*); 288 HRESULT ScriptFreeCache(SCRIPT_CACHE*);
289 HRESULT ScriptItemize(CPtr!(WCHAR), int, int, CPtr!(SCRIPT_CONTROL), CPt | 289 HRESULT ScriptItemize(const(WCHAR)*, int, int, const(SCRIPT_CONTROL)*, c
290 HRESULT ScriptLayout(int, CPtr!(BYTE), int*, int*); | 290 HRESULT ScriptLayout(int, const(BYTE)*, int*, int*);
291 HRESULT ScriptShape(HDC, SCRIPT_CACHE*, CPtr!(WCHAR), int, int, SCRIPT_A | 291 HRESULT ScriptShape(HDC, SCRIPT_CACHE*, const(WCHAR)*, int, int, SCRIPT_
292 HRESULT ScriptPlace(HDC, SCRIPT_CACHE*, CPtr!(WORD), int, CPtr!(SCRIPT_V | 292 HRESULT ScriptPlace(HDC, SCRIPT_CACHE*, const(WORD)*, int, const(SCRIPT_
293 HRESULT ScriptTextOut(HDC, SCRIPT_CACHE*, int, int, UINT, CPtr!(RECT), C | 293 HRESULT ScriptTextOut(HDC, SCRIPT_CACHE*, int, int, UINT, const(RECT)*,
294 HRESULT ScriptJustify(CPtr!(SCRIPT_VISATTR), CPtr!(int), int, int, int, | 294 HRESULT ScriptJustify(const(SCRIPT_VISATTR)*, const(int)*, int, int, int
295 HRESULT ScriptBreak(CPtr!(WCHAR), int, CPtr!(SCRIPT_ANALYSIS), CPtr!(SCR | 295 HRESULT ScriptBreak(const(WCHAR)*, int, const(SCRIPT_ANALYSIS)*, const(S
296 HRESULT ScriptCPtoX(int, BOOL, int, int, CPtr!(WORD), CPtr!(SCRIPT_VISAT | 296 HRESULT ScriptCPtoX(int, BOOL, int, int, const(WORD)*, const(SCRIPT_VISA
297 HRESULT ScriptXtoCP(int, int, int, CPtr!(WORD), CPtr!(SCRIPT_VISATTR), C | 297 HRESULT ScriptXtoCP(int, int, int, const(WORD)*, const(SCRIPT_VISATTR)*,
298 HRESULT ScriptGetLogicalWidths(CPtr!(SCRIPT_ANALYSIS), int, int, CPtr!(i | 298 HRESULT ScriptGetLogicalWidths(const(SCRIPT_ANALYSIS)*, int, int, const(
299 HRESULT ScriptApplyLogicalWidth(CPtr!(int), int, int, CPtr!(WORD), CPtr! | 299 HRESULT ScriptApplyLogicalWidth(const(int)*, int, int, const(WORD)*, con
300 HRESULT ScriptGetCMap(HDC, SCRIPT_CACHE*, CPtr!(WCHAR), int, DWORD, WORD | 300 HRESULT ScriptGetCMap(HDC, SCRIPT_CACHE*, const(WCHAR)*, int, DWORD, WOR
301 HRESULT ScriptGetGlyphABCWidth(HDC, SCRIPT_CACHE*, WORD, ABC*); 301 HRESULT ScriptGetGlyphABCWidth(HDC, SCRIPT_CACHE*, WORD, ABC*);
302 HRESULT ScriptGetProperties(CPtr!(SCRIPT_PROPERTIES**), int*); | 302 HRESULT ScriptGetProperties(const(SCRIPT_PROPERTIES**)*, int*);
303 HRESULT ScriptGetFontProperties(HDC, SCRIPT_CACHE*, SCRIPT_FONTPROPERTIE 303 HRESULT ScriptGetFontProperties(HDC, SCRIPT_CACHE*, SCRIPT_FONTPROPERTIE
304 HRESULT ScriptCacheGetHeight(HDC, SCRIPT_CACHE*, int*); 304 HRESULT ScriptCacheGetHeight(HDC, SCRIPT_CACHE*, int*);
305 HRESULT ScriptIsComplex(CPtr!(WCHAR), int, DWORD); | 305 HRESULT ScriptIsComplex(const(WCHAR)*, int, DWORD);
306 HRESULT ScriptRecordDigitSubstitution(LCID, SCRIPT_DIGITSUBSTITUTE*); 306 HRESULT ScriptRecordDigitSubstitution(LCID, SCRIPT_DIGITSUBSTITUTE*);
307 HRESULT ScriptApplyDigitSubstitution(CPtr!(SCRIPT_DIGITSUBSTITUTE), SCRI | 307 HRESULT ScriptApplyDigitSubstitution(const(SCRIPT_DIGITSUBSTITUTE)*, SCR
308 308
309 /* ScriptString Functions 309 /* ScriptString Functions
310 * http://msdn2.microsoft.com/library/ms776485 */ 310 * http://msdn2.microsoft.com/library/ms776485 */
311 HRESULT ScriptStringAnalyse(HDC, CPtr!(void), int, int, int, DWORD, int, | 311 HRESULT ScriptStringAnalyse(HDC, const(void)*, int, int, int, DWORD, int
312 HRESULT ScriptStringFree(SCRIPT_STRING_ANALYSIS*); 312 HRESULT ScriptStringFree(SCRIPT_STRING_ANALYSIS*);
313 CPtr!(SIZE) ScriptString_pSize(SCRIPT_STRING_ANALYSIS); | 313 const(SIZE)* ScriptString_pSize(SCRIPT_STRING_ANALYSIS);
314 CPtr!(int) ScriptString_pcOutChars(SCRIPT_STRING_ANALYSIS); | 314 const(int)* ScriptString_pcOutChars(SCRIPT_STRING_ANALYSIS);
315 CPtr!(SCRIPT_LOGATTR) ScriptString_pLogAttr(SCRIPT_STRING_ANALYSIS); | 315 const(SCRIPT_LOGATTR)* ScriptString_pLogAttr(SCRIPT_STRING_ANALYSIS);
316 HRESULT ScriptStringGetOrder(SCRIPT_STRING_ANALYSIS, UINT*); 316 HRESULT ScriptStringGetOrder(SCRIPT_STRING_ANALYSIS, UINT*);
317 HRESULT ScriptStringCPtoX(SCRIPT_STRING_ANALYSIS, int, BOOL, int*); 317 HRESULT ScriptStringCPtoX(SCRIPT_STRING_ANALYSIS, int, BOOL, int*);
318 HRESULT ScriptStringXtoCP(SCRIPT_STRING_ANALYSIS, int, int*, int*); 318 HRESULT ScriptStringXtoCP(SCRIPT_STRING_ANALYSIS, int, int*, int*);
319 HRESULT ScriptStringGetLogicalWidths(SCRIPT_STRING_ANALYSIS, int*); 319 HRESULT ScriptStringGetLogicalWidths(SCRIPT_STRING_ANALYSIS, int*);
320 HRESULT ScriptStringValidate(SCRIPT_STRING_ANALYSIS); 320 HRESULT ScriptStringValidate(SCRIPT_STRING_ANALYSIS);
321 HRESULT ScriptStringOut(SCRIPT_STRING_ANALYSIS, int, int, UINT, CPtr!(RE | 321 HRESULT ScriptStringOut(SCRIPT_STRING_ANALYSIS, int, int, UINT, const(RE
322 322
323 /* TODO: Windows Vista fearured functions 323 /* TODO: Windows Vista fearured functions
324 ScriptGetFontAlternateGlyphs() 324 ScriptGetFontAlternateGlyphs()
325 ScriptGetFontFeatureTags() 325 ScriptGetFontFeatureTags()
326 ScriptGetFontLanguageTags() 326 ScriptGetFontLanguageTags()
327 ScriptGetFontScriptTags() 327 ScriptGetFontScriptTags()
328 ScriptItemizeOpenType() 328 ScriptItemizeOpenType()
329 ScriptPlaceOpenType() 329 ScriptPlaceOpenType()
330 ScriptPositionSingleGlyph() 330 ScriptPositionSingleGlyph()
331 ScriptShapeOpenType() 331 ScriptShapeOpenType()
332 ScriptSubstituteSingleGlyph() 332 ScriptSubstituteSingleGlyph()
333 */ 333 */
334 } 334 }