Commit Graph

2071 Commits

Author SHA1 Message Date
Sebastian Lackner a1790df348 gdi32: Add check for NULL pointer in dibdrv_wglDescribePixelFormat.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-26 23:57:49 +09:00
Nikolay Sivov 0e92f07f41 gdi32/tests: Some empty string tests for GetTextExtentPoint.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 17:09:31 +09:00
Qian Hong e50cd3b06b gdi32: Initialize system font link registry.
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:10:06 +09:00
Huw Davies 3d58c354ae gdi32: Take into account the mask's offset.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 21:11:26 +09:00
Anton Baskanov 18dc14ed9a gdi32: Return default palette entries from GetSystemPaletteEntries for non-palette-based devices.
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 19:19:09 +09:00
Dmitry Timoshkov d774442e8d gdi32: Fix heap corruption.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Sebastian Lackner 04bd68409a gdi32: Use RtlIsCriticalSectionLockedByThread to check lock owner.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:40 +09:00
Nikolay Sivov 819d36786e gdi32: Improve structure layout of data returned by GetFontRealizationInfo().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 13:00:32 +09:00
Aric Stewart fc94e5dd5f gdi32/tests: Mark Hebrew stock font test as different, like Arabic.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-06 00:01:56 +09:00
Michael Müller cde2fbb08e gdi32: Make BitBlt and StretchDIBits hotpatchable.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-05 22:27:13 +09:00
Nikolay Sivov 6f7dfe2cea gdi32: Implement GetFontFileInfo().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2015-10-05 22:27:11 +09:00
Aric Stewart 781b88b7c5 gdi32/tests: Expand tests skipped in Arabic to also skip in Hebrew.
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-01 23:29:57 +09:00
Nikolay Sivov 7f4c158a39 gdi32: Return font ids from GetFontRealizationInfo(). 2015-10-01 23:00:24 +09:00
Ken Thomases a05cdaa1b8 gdi32: Antialias fake bold or italic fonts regardless of GASP table.
If the client requests a bold typeface of a font which doesn't actually provide
a bold typeface, Wine fakes it using FT_Outline_Embolden().  Likewise, it fakes
italic by apply a shear transform.

These techniques work passably when antialiasing is in effect.  However, when
antialiasing is disabled at small sizes by the font's GASP table, the results
are horrible.  The glyphs have many spurs or appear furry.

On the theory that fonts disable antialiasing via the GASP table at small sizes
because hinting should produce pixel-perfect results and that that rationale is
voided by the application of procedural bolding or italicizing, we ignore the
GASP table and always antialias for fake bold or italic fonts.

There is a new registry setting to disable this and revert to the previous
behavior:

[HKEY_CURRENT_USER\Software\Wine\Fonts]
"AntialiasFakeBoldOrItalic"="n"

Signed-off-by: Ken Thomases <ken@codeweavers.com>
2015-10-01 16:31:54 +09:00
Nikolay Sivov af5884ffe5 gdi32/freetype: Handle fonts with broken usWinDescent values. 2015-10-01 16:29:40 +09:00
Nikolay Sivov efb8afcfdc gdi32/tests: Avoid excessive traces for fonts with OS/2 version 4 tables. 2015-09-11 16:05:23 +09:00
Alexandre Julliard 58fe3afff5 gdi32: Add an intermediate pointer to avoid a compiler warning. 2015-09-10 19:47:24 +09:00
Gerald Pfeifer 775de7922e gdi32: Avoid two cases of shift overflow in get_glyph_indices. 2015-09-08 15:10:59 +09:00
Alistair Leslie-Hughes 8348c0ebe0 gdi32/tests: Add enhanced metafile GetPath test. 2015-09-01 21:12:10 +09:00
Nikolay Sivov 7889b17425 gdi32: Added GetFontRealizationInfo() export. 2015-09-01 19:28:16 +09:00
Nikolay Sivov adb0f582e0 gdi32/tests: Add names to data structure GetFontRealizationInfo returns, explicitly test with older variant fields. 2015-09-01 19:27:20 +09:00
Huw Davies 5021e91940 gdi32/tests: 64-bit GetFontFileInfo may fail with error ERROR_NOACCESS. 2015-08-20 20:35:20 +09:00
Huw Davies 76c321d5e6 gdi32: Add tests for GetFontRealizationInfo, GetFontFileInfo and GetFontFileData. 2015-08-17 14:52:15 +09:00
Francois Gouget f8a7d6ed74 Assorted spelling fixes. 2015-08-07 23:50:48 +09:00
Daniel Lehman 22c51eeabf gdi32: Check for NULL pointer in GetOutlineTextMetrics. 2015-07-28 13:41:46 +02:00
Dmitry Timoshkov 50b6b376cb gdi32: EnumFontFamilies should enumerate substituted fonts only when directly asked for. 2015-07-17 19:29:10 +09:00
Dmitry Timoshkov 5289c9fd92 gdi32: Add a test for enumerating substituted fonts.
EnumFontFamilies(NULL) should not enumerate substituted fonts,
but EnumFontFamilies("MS Shell Dlg") should do.
2015-07-17 19:28:32 +09:00
Jactry Zeng c015447d07 gdi32: Add multiple font replacement support. 2015-07-17 16:40:29 +09:00
Jactry Zeng cb59350ed9 gdi32: Add a helper to map font replacement. 2015-07-17 16:40:29 +09:00
Nikolay Sivov d5c9a8a57a gdi32: Clarify offsets and sizes in vdmx table lookup code. 2015-06-30 14:36:41 +09:00
Nikolay Sivov 7ebdd58556 gdi32: Add a separate helper to load FT_Short values (Coverity). 2015-06-29 19:07:45 +09:00
Nikolay Sivov 885394bb0a gdi32/freetype: Properly handle loading of FT_Long-sized types (Valgrind). 2015-06-22 19:16:48 +09:00
Huw Davies c81ff0f8cf gdi32/tests: Japanese Win 7 uses MS Shell Dlg as its default GUI font. 2015-06-19 20:14:38 +09:00
Huw Davies 002cf965e1 gdi32/tests: Fix Courier test on Arabic locales. 2015-06-18 21:41:02 +09:00
Nikolay Sivov ce58518c6e gdi32: Return GCP_USEKERNING if font has kerning pairs support. 2015-06-08 15:29:53 +09:00
Thomas Faller 9244cac3af gdi32: Prevent unneeded operations by flag check. 2015-06-04 15:57:41 +09:00
Huw Davies 0c1f329053 gdi32: Prevent the underline / strikeout width getting rounded to zero. 2015-05-19 19:24:43 +09:00
Francois Gouget 150d920310 gdi32/tests: Silence some font traces that generate too many lines. 2015-05-11 15:19:04 +09:00
Patrick Rudolph d2a91a3aed gdi32: Add stub functions. 2015-04-17 17:32:46 +09:00
Bruno Jesus 5c323a540c gdi32: Support negative count values in GetBitmapBits. 2015-04-08 16:23:49 +09:00
Thomas Faber 8a390c8661 gdi32: Avoid uninitialized variable use in EnumEnhMetaFile (MSVC). 2015-03-30 20:05:16 +09:00
Michael Stefaniuc 8293cf33e0 gdi32: Remove double parentheses, not a misplaced pair (PVS-Studio). 2015-03-06 20:32:00 +09:00
Alexandre Julliard 336be2f694 gdi32: Use shorter constants for byte and word masks to avoid warnings. 2015-03-04 21:50:35 +09:00
Michael Müller e618ab65ed gdi32: Fix arguments for OSMesaMakeCurrent when using 16 bit formats. 2015-02-26 20:10:08 +09:00
Thomas Faber 656bc70f80 gdi32/tests: Avoid variable length arrays (MSVC). 2015-02-17 22:28:14 +09:00
Ken Thomases e9c36154e3 gdi32: Change an ERR to a WARN for fonts with too-long names.
The situation is commonplace on Macs and benign.
2015-02-16 19:18:39 +09:00
Aric Stewart ecbda5686d gdi32: Do not install fonts with a family name that is too long. 2015-01-20 16:34:22 +01:00
Nikolay Sivov 88202b3d9b gdi32: Remove some useless returns. 2014-12-15 13:40:27 +01:00
Michael Stefaniuc 80218d19ef gdi32/tests: Don't clear a variable before it goes out of scope (PVS-Studio). 2014-11-28 17:04:21 +01:00
Nikolay Sivov 0c507a1768 gdi32: Clarify read length values used with get_font_data(). 2014-11-26 17:35:14 +01:00
André Hentschel d83ae0ef40 gdi32: Remove unused function (Clang). 2014-11-25 19:49:36 +01:00
Nikolay Sivov 2f0a4a4425 gdi32: Remove undefs for names that are never defined. 2014-11-25 19:49:30 +01:00
André Hentschel d9d1725295 gdi32: Remove unused string (Clang). 2014-11-20 22:32:04 +09:00
Amine Khaldi b9f18b3431 gdi32/tests: Add basic tests for the handling of dwCount parameter in ExtCreateRegion. 2014-11-03 16:35:11 +09:00
Michael Stefaniuc b5a405af2f gdi32: Remove a basically unused variable (PVS-Studio). 2014-11-03 16:34:52 +09:00
André Hentschel 88e8102570 gdi32: Fix typo in a condition (PVS-Studio). 2014-10-28 14:05:19 +09:00
Alexandre Julliard 55f24da978 gdi32: Check the hatch masks instead of the rop masks for the null and mask optimization case. 2014-10-27 17:35:44 +09:00
Matteo Bruni a71f25d239 gdi32/tests: Add a test for GetGlyphOutline with an insufficient buffer. 2014-10-09 18:24:53 +02:00
Matteo Bruni 112a7f7f97 gdi32: Don't overflow the buffer in GetGlyphOutline. 2014-10-09 18:24:47 +02:00
Gerald Pfeifer ff05f2dec6 gdi32: Remove unused constant bit_fields_565. 2014-08-11 23:55:19 +02:00
Thomas Faber 07ca1afbd3 gdi32: Do not omit mandatory argument to WriteFile. 2014-07-14 17:22:39 +02:00
Qian Hong 887a6832bb gdi32/tests: Improve font name localization tests by not requiring a strict language match. 2014-07-10 12:40:44 +02:00
Alexandre Julliard 18d410dec1 tools: Don't include wine/unicode.h if not necessary. 2014-07-08 17:00:22 +02:00
Alexander Almaleh 8762842cd3 gdi32: Fix XFORM.eM22 calculation in PlgBlt. 2014-06-26 21:19:25 +02:00
Frédéric Delanoy 2ab8729020 Assorted spelling/grammar fixes. 2014-06-20 12:19:31 +02:00
Alexandre Julliard ec3f8a76d5 gdi32/tests: Silence some noisy traces. 2014-06-17 10:58:51 +02:00
Alexandre Julliard 7d21dd26c8 gdi32/tests: Remove some noisy traces. 2014-06-13 10:12:28 +02:00
Huw Davies 80a29e2d31 gdi32: CLIP_DFA_DISABLE should disable the font association mechanism. 2014-06-11 19:15:28 +02:00
Huw Davies 0987e77089 gdi32/tests: tmLastChar is solely governed by the last entry before 0xffff in the cmap. 2014-06-11 16:04:55 +02:00
Alex Henrie 0fb88f8d01 gdi32/tests: Add MS Shell Dlg tests. 2014-05-13 19:58:09 +02:00
Stefan Dösinger a373c35371 gdi32/tests: Test RGBQUAD.rgbReserved in SetDIBColorTable. 2014-05-07 20:21:52 +02:00
Huw Davies c66f0019ff gdi32: In a Hebrew locale the last char of a symbol font is reported as 0xf896 rather than 0xf0ff. 2014-05-07 18:57:35 +02:00
Alex Henrie d2dce849b5 gdi32: Simplify family_matches and face_matches. 2014-05-07 10:22:08 +02:00
Henri Verbeet 9016d1eda0 gdi32: Use FIELD_OFFSET to calculate the structure size in GetRegionData(). 2014-05-06 13:51:40 +02:00
Akihiro Sagawa b6ef7274c5 gdi32/tests: Make bmi structure const. 2014-05-02 16:29:03 +02:00
Frédéric Delanoy 2e5cb7aac8 Assorted spelling/grammar fixes. 2014-04-30 18:34:20 +02:00
Alexandre Julliard 47ed5655c5 gdi32/tests: Don't fetch the bits into the DIB itself. 2014-04-28 14:37:02 +02:00
Nikolay Sivov 8a3f3c0817 gdi32/dibdrv: Fix a clipped_rects leak (Valgrind). 2014-04-25 11:05:19 +02:00
Alexandre Julliard 955676bc05 gdi32: Pass the full DC handle to the hook in DeleteDC. 2014-04-14 09:38:01 +02:00
Austin English d0fa8cbc74 gdi32/tests: Skip some tests if Times New Roman is not installed. 2014-04-11 19:12:31 +02:00
Thomas Faber ff3d728d74 gdi32: Avoid variable-length arrays. 2014-03-25 13:55:45 +01:00
Akihiro Sagawa f548ce29ed gdi32/tests: GetGlyphOutlineA is broken for johab charset on windows. 2014-03-20 10:41:48 +01:00
André Hentschel 87d85357cd gdi32/tests: GetCharABCWidthsA is broken for johab charset on windows. 2014-03-18 11:40:30 +01:00
Akihiro Sagawa 04e8b00ab0 gdi32: Improve the font enumeration order for complex script locales. 2014-03-12 20:27:43 +01:00
Henri Verbeet cf5023bfff gdi32/tests: Fix test_device_caps() on multihead setups.
Unfortunately this currently mostly fails on Wine.
2014-03-11 19:39:36 +01:00
Henri Verbeet d8ec2b5d95 gdi32/tests: Fix test_window_dc_clipping() when the virtual screen origin is not (0, 0). 2014-03-11 19:39:35 +01:00
Akihiro Sagawa 1e7116ca9f gdi32/tests: Avoid using GetGlyphIndices directly. 2014-02-19 16:39:29 +01:00
Akihiro Sagawa efe7a9763f gdi32/tests: Improve the font search method for test_EnumFontFamiliesEx_default_charset. 2014-02-19 16:39:29 +01:00
Akihiro Sagawa feaf554778 gdi32/tests: Mark Win2k result as broken. 2014-02-19 16:39:28 +01:00
Frédéric Delanoy 0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01:00
André Hentschel 540d1459f9 gdi32: Use boolean return values in boolean functions. 2014-01-30 14:51:36 +01:00
Alexandre Julliard cf0e96c6d0 configure: Rename substituted variables to a standard _CFLAGS and _LIBS format. 2014-01-30 14:51:33 +01:00
Alexandre Julliard db2be9dc0b configure: Add a pkg-config check for fontconfig. 2014-01-30 14:51:30 +01:00
Alexandre Julliard 8aa64e3580 configure: Automatically expand _CFLAGS and _LIBS variables in all makefiles. 2014-01-30 12:42:56 +01:00
Akihiro Sagawa e06d2dbc67 gdi32: Fix regression due to sub-pixel shift calculations fixes. 2014-01-27 14:13:28 +01:00
Alexandre Julliard 36301db4d3 gdi32/tests: Update a few more failing DIB cases. 2014-01-14 20:18:15 +01:00
Akihiro Sagawa f6475ace5f gdi32: Improve vertical writing metrics. 2014-01-13 17:37:38 +01:00
Akihiro Sagawa a221654aae gdi32/tests: Add tests for vertical writing metrics. 2014-01-13 17:37:37 +01:00
Akihiro Sagawa f6bc356860 gdi32: Fix ABC metrics for rotated font. 2014-01-13 17:37:35 +01:00
Akihiro Sagawa b8f22f4755 gdi32/tests: Add more GetCharABCWidths tests for rotated font. 2014-01-13 17:37:34 +01:00