changeset 2577:d74c9a4312cd

PR1018: JVM fails due to SEGV during rendering some Unicode characters
author ptisnovs
date Thu, 31 May 2012 12:40:08 +0200
parents d4b5430ea2c1
children 96394d394527
files ChangeLog Makefile.am NEWS patches/coverage-table.patch
diffstat 4 files changed, 25 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed May 16 10:56:40 2012 +0100
+++ b/ChangeLog	Thu May 31 12:40:08 2012 +0200
@@ -1,3 +1,10 @@
+2012-05-31  Pavel Tisnovsky  <ptisnovs@redhat.com>
+
+	* patches/coverage-table.patch:
+	PR1018: JVM fails due to SEGV during rendering some Unicode characters
+	* NEWS: Mention bugfix.
+	* Makefile.am: Updated.
+
 2012-05-16  Andrew John Hughes  <ahughes@redhat.com>
 
 	* NEWS: Add 1.10.8 section.
--- a/Makefile.am	Wed May 16 10:56:40 2012 +0100
+++ b/Makefile.am	Thu May 31 12:40:08 2012 +0200
@@ -384,7 +384,8 @@
 	patches/openjdk/6792400-Avoid_loading_Normalizer_resources.patch \
 	patches/openjdk/7103224-glibc_name_collision.patch \
 	patches/openjdk/7140882-dont-return-booleans-from-methods-returning-pointers.patch \
-	patches/openjdk/remove-mimpure-option-to-gcc.patch
+	patches/openjdk/remove-mimpure-option-to-gcc.patch \
+	patches/coverage-table.patch
 
 if WITH_ALT_HSBUILD
 ICEDTEA_PATCHES += \
--- a/NEWS	Wed May 16 10:56:40 2012 +0100
+++ b/NEWS	Thu May 31 12:40:08 2012 +0200
@@ -11,6 +11,9 @@
 
 New in release 1.10.8 (2012-XX-XX):
 
+* Bug fixes
+  - PR1018: JVM fails due to SEGV during rendering some Unicode characters
+
 New in release 1.10.7 (2012-05-11):
 
 * Fixed build with GCC 4.7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/coverage-table.patch	Thu May 31 12:40:08 2012 +0200
@@ -0,0 +1,13 @@
+--- openjdk/jdk/src/share/native/sun/font/layout/CoverageTables.cpp	2012-05-01 23:18:32.000000000 +0200
++++ openjdk.orig/jdk/src/share/native/sun/font/layout/CoverageTables.cpp	2012-05-30 13:05:52.000000000 +0200
+@@ -71,6 +71,10 @@
+     le_uint16 probe = power;
+     le_uint16 index = 0;
+ 
++        if (count == 0) {
++                return -1;
++        }
++
+     if (SWAPW(glyphArray[extra]) <= ttGlyphID) {
+         index = extra;
+     }