Esme Povirk
fad8d49606
dwrite: Account for position != 0 in fetch loops.
...
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-13 11:29:56 +01:00
Esme Povirk
07fd82cdbd
dwrite: Fix possible use of uninitialized memory.
...
If the text source returns fewer than length character, part
of the buffer will be uninitialized.
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-13 11:29:52 +01:00
Esme Povirk
412b36e45a
dwrite: Avoid calling memcpy with NULL source.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52187
Signed-off-by: Esme Povirk <esme@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-13 11:29:25 +01:00
Nikolay Sivov
98d88f22e2
dwrite: Remove some unused fields.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Nikolay Sivov
94d7abce63
dwrite: Keep corresponding data context for created backend object.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Nikolay Sivov
828e7173bc
dwrite/layout: Simplify run direction check condition.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Nikolay Sivov
a005d43b98
dwrite: Implement Wow64 entry points for unixlib.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Nikolay Sivov
275a2d71d6
dwrite: Switch to unixlib syscall interface.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Nikolay Sivov
06742814ed
dwrite: Remove unixlib callbacks.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Nikolay Sivov
b1dc908aa5
dwrite: Move bitmap cache to PE side.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Nikolay Sivov
b3ad9000c0
dwrite: Move glyph box cache to PE side.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Nikolay Sivov
4ae2058e0b
dwrite: Use separate argument for cache key for get_bbox/get_bitmap calls.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Nikolay Sivov
74e951a73e
dwrite: Add flag for cached advance presence.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Nikolay Sivov
eef8a44db7
dwrite: Move glyph advances cache to PE side.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-06 16:14:10 +01:00
Nikolay Sivov
909f7aa7c2
dwrite: Use CRT allocation functions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Nikolay Sivov
1a8d6f55f2
dwrite: Allocate outline buffers on PE side.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Nikolay Sivov
6356717c47
dwrite: Do not use freetype cache for design glyph metrics.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Nikolay Sivov
822a49d524
dwrite: Use per-instance font object for GetGlyphCount().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Nikolay Sivov
7639820cfb
dwrite: Create backend font objects for faces.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Alexandre Julliard
ef6e33f89f
include: Don't include wine/port.h in Unix libraries.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Nikolay Sivov
992e0a6045
dwrite: Add properties for new Unicode 13 scripts.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 16:01:34 +02:00
Alexandre Julliard
088a787a2c
makefiles: Make -mno-cygwin the default.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Nikolay Sivov
8ca898ed36
dwrite/tests: Add a linebreaking test regarding LB30 rule changes in Unicode 13.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-15 19:34:22 +02:00
Nikolay Sivov
a80ecd1af7
tools: Update to Unicode 14.0.0.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-15 19:34:21 +02:00
Michael Stefaniuc
431f157cd2
dwrite: Avoid casts from COM object to interface.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-26 10:39:53 +02:00
Nikolay Sivov
eba92fd3a7
dwrite/tests: Use winetest context for some tests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-18 18:42:27 +02:00
Nikolay Sivov
f47751a992
gdi32: Update font realization structure definition.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 11:01:41 +02:00
Nikolay Sivov
44b30c42cb
dwrite/layout: Remove duplicated helper.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-19 21:19:22 +02:00
Nikolay Sivov
ada2543e68
dwrite/tests: Add some tests for HitTestTextRange().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-19 17:05:02 +02:00
Nikolay Sivov
430145e431
dwrite: Check for allocation failures of glyph buffers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-11 18:30:50 +02:00
Alexandre Julliard
4da6dc6384
dwrite: Avoid wcsncpy().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-04 21:33:15 +02:00
Sven Baars
7ed4810a0e
dwrite: Fix some memory leaks (Coverity).
...
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Nikolay Sivov
defb7d9c76
dwrite/tests: Add glyph origin tests for sideways mode.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-15 17:41:40 +02:00
Nikolay Sivov
fcd8508993
dwrite: Use wide-char literals.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-31 22:16:25 +02:00
Nikolay Sivov
db516804cc
dwrite: Build with msvcrt.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
f4d84acf26
dwrite/layout: Reuse glyph origins calculation helper to get run boxes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
69cfb81b29
dwrite: Explicitly cast to signed type for abs().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
8bcdac04a8
dwrite: Move outline dumping helpers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-30 17:10:03 +02:00
Nikolay Sivov
aab6ebb734
dwrite: Use ntdll exports for freetype mutex.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
3bb778a637
dwrite: Pass simulation mask when getting a glyph outline.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
ca08a5e722
dwrite: Introduce interface to font backend.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
d77110a40c
dwrite: Use FT_MulDiv() in freetype integration.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
f3d777ba7d
dwrite: Introduce callback interface to initialize freetype face objects.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
ff983fe75f
dwrite/tests: Add some tests for CreateFontCollectionFromFontSet().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 10:07:12 +02:00
Nikolay Sivov
183394cd86
dwrite: Use D3DCOLORVALUE equivalent to avoid nameless unions.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:58:37 +01:00
Jacek Caban
b39b9eea39
include: Don't default to WINE_NO_NAMELESS_EXTENSION for Wine build.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 21:48:38 +01:00
Nikolay Sivov
ae3422c615
dwrite: Return complete outline data from freetype integration code.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-22 18:52:57 +01:00
Francois Gouget
9d5e17654d
dwrite: Fix the case of FreeType in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Nikolay Sivov
0ed0fd05c3
dwrite: Request one glyph outline at a time in GetGlyphRunOutline().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:54 +01:00
Nikolay Sivov
6f9e1e078e
dwrite/gdiinterop: Pass target transform when getting recommended rendering mode.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 10:51:52 +01:00