Crash in DirectWrite CreateBitmap code when running TestFX test suite

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: P2
    • jfx13
    • Affects Version/s: jfx11, 10
    • Component/s: javafx
    • Environment:

      Windows Server 2012 R2

    • x86_64
    • windows_2012

        Running the TestFX test suite using JDK 10 crashes in DirectWrite CreateBitmap with the following stack trace:

        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007fffe2c74e80, pid=3000, tid=600
        #
        # JRE version: Java(TM) SE Runtime Environment (10.0+46) (build 10+46)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (10+46, mixed mode, tiered, compressed oops, g1 gc, windows-amd64)
        # Problematic frame:
        # C [javafx_font.dll+0x4e80]
        #
        # Core dump will be written. Default location: C:\projects\testfx\subprojects\testfx-core\hs_err_pid3000.mdmp
        #
        # If you would like to submit a bug report, please visit:
        # http://bugreport.java.com/bugreport/crash.jsp
        # The crash happened outside the Java Virtual Machine in native code.
        # See problematic frame for where to report the bug.
        #
        --------------- S U M M A R Y ------------
        Command Line: -Dorg.gradle.native=false -Dfile.encoding=windows-1252 -Duser.country=US -Duser.language=en -Duser.variant -ea -Djava.awt.headless=true -Dtestfx.robot=glass -Dtestfx.headless=true -Dprism.order=sw -Dprism.text=t2k worker.org.gradle.process.internal.worker.GradleWorkerMain 'Gradle Test Executor 1'
        Host: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz, 2 cores, 2G, Windows Server 2012 R2 , 64 bit Build 9600 (6.3.9600.17415)
        Time: Fri Apr 13 02:07:48 2018 Coordinated Universal Time elapsed time: 5 seconds (0d 0h 0m 5s)
        --------------- T H R E A D ---------------
        Current thread (0x000000405f666800): JavaThread "QuantumRenderer-0" daemon [_thread_in_native, id=600, stack(0x0000004061600000,0x0000004061700000)]
        Stack: [0x0000004061600000,0x0000004061700000], sp=0x00000040616fc9c0, free space=1010k
        Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
        C [javafx_font.dll+0x4e80]
        Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
        j com.sun.javafx.font.directwrite.OS.CreateBitmap(JIIII)J+0 javafx.graphics@10
        j com.sun.javafx.font.directwrite.IWICImagingFactory.CreateBitmap(IIII)Lcom/sun/javafx/font/directwrite/IWICBitmap;+9 javafx.graphics@10
        ...

        I have attached the crash log.

        This was originally filed on github: https://github.com/javafxports/openjdk-jfx/issues/66

        This was discovered when they upgraded to JDK 10, but is likely a preexisting bug. The test sets the "-Dprism.text=t2k" flag, which used to force T2K prior to JDK 10. Since T2K was removed in JDK 10, this flag is now ignored and the native font code is used.

              Assignee:
              Kevin Rushforth
              Reporter:
              Kevin Rushforth
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: