summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-02-27 16:04:58 +0100
committerBram Moolenaar <Bram@vim.org>2016-02-27 16:04:58 +0100
commitd804fdf4c25435284333258856bc265f1ff10b09 (patch)
treefcc82ad01ee84380dd2b458a0a9c3d5d559fa4b0
parentedb4f2b3601b0abd47091606269c0ac3244a805b (diff)
patch 7.4.1429v7.4.1429
Problem: On MS-Windows, when not use renderoptions=type:directx, drawing emoji will be broken. Solution: Fix usage of unicodepdy. (Yasuhiro Matsumoto)
-rw-r--r--src/gui_w32.c8
-rw-r--r--src/version.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/src/gui_w32.c b/src/gui_w32.c
index edfe24e560..aff0ba26aa 100644
--- a/src/gui_w32.c
+++ b/src/gui_w32.c
@@ -6658,7 +6658,13 @@ gui_mch_draw_string(
/* Use unicodepdy to make characters fit as we expect, even
* when the font uses different widths (e.g., bold character
* is wider). */
- unicodepdy[clen] = cw * gui.char_width;
+ if (c >= 0x10000)
+ {
+ unicodepdy[wlen - 2] = cw * gui.char_width;
+ unicodepdy[wlen - 1] = 0;
+ }
+ else
+ unicodepdy[wlen - 1] = cw * gui.char_width;
}
cells += cw;
i += utfc_ptr2len_len(text + i, len - i);
diff --git a/src/version.c b/src/version.c
index 68ccf92802..4fde2fe853 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1429,
+/**/
1428,
/**/
1427,