diff options
-rw-r--r-- | media-gfx/fontforge/files/20200314-stylemap.patch | 30 | ||||
-rw-r--r-- | media-gfx/fontforge/fontforge-20200314.ebuild | 2 |
2 files changed, 31 insertions, 1 deletions
diff --git a/media-gfx/fontforge/files/20200314-stylemap.patch b/media-gfx/fontforge/files/20200314-stylemap.patch new file mode 100644 index 000000000000..d3311cab02d2 --- /dev/null +++ b/media-gfx/fontforge/files/20200314-stylemap.patch @@ -0,0 +1,30 @@ +From 3b83adc89771000eb95fcd87bb675f771ba85aaf Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Sun, 29 Mar 2020 16:36:14 -0400 +Subject: [PATCH] Avoid integer size conflict when setting stylemap + +stylemap is a 16-bit integer, but hexmap writes 32-bits. + +Bug: https://bugs.gentoo.org/642756 +--- + fontforge/sfd.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/fontforge/sfd.c b/fontforge/sfd.c +index 9517d8cb1..b638fe447 100644 +--- a/fontforge/sfd.c ++++ b/fontforge/sfd.c +@@ -8104,7 +8104,9 @@ bool SFD_GetFontMetaData( FILE *sfd, + } + else if ( strmatch(tok,"StyleMap:")==0 ) + { +- gethex(sfd,(uint32 *)&sf->pfminfo.stylemap); ++ uint32 u; ++ gethex(sfd,&u); ++ sf->pfminfo.stylemap = u; + } + /* Legacy attribute for StyleMap. Deprecated. */ + else if ( strmatch(tok,"OS2StyleName:")==0 ) +-- +2.26.0.rc2 + diff --git a/media-gfx/fontforge/fontforge-20200314.ebuild b/media-gfx/fontforge/fontforge-20200314.ebuild index 6ff768243eef..adb0670b3bbf 100644 --- a/media-gfx/fontforge/fontforge-20200314.ebuild +++ b/media-gfx/fontforge/fontforge-20200314.ebuild @@ -56,7 +56,7 @@ BDEPEND=" " PATCHES=( - "${FILESDIR}"/20170731-gethex-unaligned.patch + "${FILESDIR}"/20200314-stylemap.patch "${FILESDIR}"/20200314-tilepath.patch ) |