src/java.desktop/share/native/libfontmanager/HBShaper.c
changeset 54590 98473958d49a
parent 47216 71c04702a3d5
--- a/src/java.desktop/share/native/libfontmanager/HBShaper.c	Thu Apr 11 14:20:16 2019 +0530
+++ b/src/java.desktop/share/native/libfontmanager/HBShaper.c	Thu Apr 11 10:49:36 2019 -0700
@@ -201,9 +201,7 @@
                        jobject font2D,
                        jobject fontStrike,
                        jfloat ptSize,
-                       jlong pScaler,
                        jlong pNativeFont,
-                       jlong layoutTables,
                        jfloatArray matrix,
                        jboolean aat) {
 
@@ -216,7 +214,6 @@
     fi->font2D = font2D;
     fi->fontStrike = fontStrike;
     fi->nativeFont = pNativeFont;
-    fi->layoutTables = (TTLayoutTableCache*)layoutTables;
     fi->aat = aat;
     (*env)->GetFloatArrayRegion(env, matrix, 0, 4, fi->matrix);
     fi->ptSize = ptSize;
@@ -241,9 +238,8 @@
      jobject fontStrike,
      jfloat ptSize,
      jfloatArray matrix,
-     jlong pScaler,
      jlong pNativeFont,
-     jlong layoutTables,
+     jlong pFace,
      jboolean aat,
      jcharArray text,
      jobject gvdata,
@@ -256,6 +252,7 @@
      jint slot) {
 
      hb_buffer_t *buffer;
+     hb_face_t* hbface;
      hb_font_t* hbfont;
      jchar  *chars;
      jsize len;
@@ -272,7 +269,7 @@
 
      JDKFontInfo *jdkFontInfo =
          createJDKFontInfo(env, font2D, fontStrike, ptSize,
-                           pScaler, pNativeFont, layoutTables, matrix, aat);
+                           pNativeFont, matrix, aat);
      if (!jdkFontInfo) {
         return JNI_FALSE;
      }
@@ -280,7 +277,8 @@
      jdkFontInfo->font2D = font2D;
      jdkFontInfo->fontStrike = fontStrike;
 
-     hbfont = hb_jdk_font_create(jdkFontInfo, NULL);
+     hbface = (hb_face_t*) jlong_to_ptr(pFace);
+     hbfont = hb_jdk_font_create(hbface, jdkFontInfo, NULL);
 
      buffer = hb_buffer_create();
      hb_buffer_set_script(buffer, getHBScriptCode(script));