summaryrefslogtreecommitdiff
path: root/icu
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2011-02-02 12:48:07 +0000
committerCaolán McNamara <caolanm@redhat.com>2011-02-02 12:48:07 +0000
commit6bdf7f86b41967cc70260b40c0f9e740890a5909 (patch)
treedee315560e198f686064a7f2ee36ae8742a3a069 /icu
parent074034a79ef6ebf5bb3c0353dbde5ad134d4b3a8 (diff)
Resolves: rhbz#674328 freeserif crashes libicu
Diffstat (limited to 'icu')
-rw-r--r--icu/icu4c.8320.freeserif.crash.patch13
-rw-r--r--icu/makefile.mk4
2 files changed, 17 insertions, 0 deletions
diff --git a/icu/icu4c.8320.freeserif.crash.patch b/icu/icu4c.8320.freeserif.crash.patch
new file mode 100644
index 000000000000..4e4c3da92742
--- /dev/null
+++ b/icu/icu4c.8320.freeserif.crash.patch
@@ -0,0 +1,13 @@
+--- misc/icu/source/layout/LookupProcessor.cpp 2011-02-02 12:29:54.369077099 +0000
++++ misc/build/icu/source/layout/LookupProcessor.cpp 2011-02-02 12:31:54.215503036 +0000
+@@ -70,6 +70,10 @@
+
+ if (selectMask != 0) {
+ const LookupTable *lookupTable = lookupListTable->getLookupTable(lookup);
++
++ if (!lookupTable)
++ continue;
++
+ le_uint16 lookupFlags = SWAPW(lookupTable->lookupFlags);
+
+ glyphIterator.reset(lookupFlags, selectMask);
diff --git a/icu/makefile.mk b/icu/makefile.mk
index 01610dc4cbbc..dfe725231dd9 100644
--- a/icu/makefile.mk
+++ b/icu/makefile.mk
@@ -46,8 +46,12 @@ TARFILE_MD5=
.ENDIF
TARFILE_ROOTDIR=icu
+#icu4c.8320.freeserif.crash.patch, see
+#http://bugs.icu-project.org/trac/ticket/8320 for crash with FreeSerif
+
PATCH_FILES=\
${TARFILE_NAME}.patch \
+ icu4c.8320.freeserif.crash.patch \
icu4c-aix.patch
.IF "$(GUI)"=="UNX"