Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4182177

Sol2.5 SEGV upon printing highlighting demo then a quick tab change

    Details

    • Subcomponent:
      2d
    • CPU:
      sparc
    • OS:
      solaris_2.5.1, solaris_2.6

      Description

      Build : 'O'
      OS : 5.5.1
      Machine : orange
      app : Java2Demo

      Summary: Immediately after hitting the print button in the Print dialog to print Fonts.Highlighting, quickly changing to another tab (ie Transforms' tab) gets a SEGV

      Steps :
        1. Launch Java2Demo
        2. Goto Fonts.
        3. Enable Toolbar
        4. Print Fonts.Highlighting
        5. IMMEDIATELY after hitting the "Print" button in the print
           dialog switch to Transforms tab.

      - at this point you should get a SEGV.

        Timing between clicking on the Print then to Transforms tab is key to this bug.

      rk2d@orange:/home/rk2d/scripts/promoted/solaris/demo/jfc/Java2D( 438 )%
      ../../../bin/java -Djava.compiler= Java2Demo
      SIGSEGV 11* segmentation violation
          si_signo [6]: SIGABRT 6* abort (generated by abort(3) routine)
          si_errno [0]: Error 0
          si_code [0]: SI_USER [pid: 5187, uid: 81727]
              stackpointer=ea780878

      Full thread dump Classic VM (JDK-1.2fcs-O, green threads):
          "stderr reader pid=5196" (TID:0xebc69c48, sys_thread_t:0x632d68, state:CW)
      prio=10
              at java.io.FileInputStream.readBytes(Native Method)
              at java.io.FileInputStream.read(FileInputStream.java:168)
              at java.lang.ProcessInputStream.run(UNIXProcess.java:361)
              at java.lang.Thread.run(Thread.java:479)
          "stdout reader pid=5196" (TID:0xebc69980, sys_thread_t:0x7b39b0, state:CW)
      prio=10
              at java.io.FileInputStream.readBytes(Native Method)
              at java.io.FileInputStream.read(FileInputStream.java:168)
              at java.lang.ProcessInputStream.run(UNIXProcess.java:361)
              at java.lang.Thread.run(Thread.java:479)
          "process reaper" (TID:0xebc6a138, sys_thread_t:0x7b3458, state:CW) prio=10
              at java.lang.UNIXProcess.run(Native Method)
              at java.lang.Thread.run(Thread.java:479)
          "Printing Highlighting" (TID:0xebc29f30, sys_thread_t:0x77f520, state:R)
      prio=10
              at
      sun.awt.font.NativeFontWrapper.drawGlyphVectorIntDiscreteRaster(Native Method)
              at
      sun.java2d.loops.ICRDrawGlyphVectorRasterContext.invoke(TextRendering.java:970)
              at
      sun.awt.image.BufferedImageGraphics2D.drawGlyphVector(BufferedImageGraphics2D.ja
      va:1133)
              at sun.java2d.SunGraphics2D.drawGlyphVector(SunGraphics2D.java:2231)
              at sun.java2d.ProxyGraphics2D.drawGlyphVector(ProxyGraphics2D.java:1230)
              at
      sun.awt.font.ExtendedTextSourceLabel.draw(ExtendedTextSourceLabel.java:111)
              at
      sun.awt.font.ExtendedTextLabelComponent.handleDraw(ExtendedTextLabelComponent.ja
      va:59)
              at
      sun.awt.font.TextLineComponent.drawTextAndEmbellishments(TextLineComponent.java:
      89)
              at sun.awt.font.TextLineComponent.draw(TextLineComponent.java:125)
              at java.awt.font.TextLine.draw(TextLine.java:464)
              at java.awt.font.TextLayout.draw(TextLayout.java:3054)
              at demos.Fonts.Highlighting.drawDemo(Highlighting.java:105)
              at DemoSurface.print(DemoSurface.java:250)
              at sun.java2d.RasterPrinterJob.printPage(RasterPrinterJob.java:568)
              at sun.java2d.RasterPrinterJob.print(RasterPrinterJob.java:235)
              at ToolBar.run(ToolBar.java:236)
              at java.lang.Thread.run(Thread.java:479)
          "PerformanceMonitor" (TID:0xebcc2740, sys_thread_t:0x50a358, state:CW)
      prio=1
              at java.lang.Thread.sleep(Native Method)
              at PerformanceMonitor$MonitorComponent.run(PerformanceMonitor.java:141)
              at java.lang.Thread.run(Thread.java:479)
          "MemoryMonitor" (TID:0xebcc22a8, sys_thread_t:0x50a220, state:CW) prio=1
              at java.lang.Thread.sleep(Native Method)
              at MemoryMonitor$MonitorComponent.run(MemoryMonitor.java:236)
              at java.lang.Thread.run(Thread.java:479)
          "TimerQueue" (TID:0xebcb9760, sys_thread_t:0x488f38, state:CW) prio=5
              at java.lang.Object.wait(Native Method)
              at javax.swing.TimerQueue.run(TimerQueue.java:205)
              at java.lang.Thread.run(Thread.java:479)
          "AWT-Finalizer" (TID:0xebc9cfd8, sys_thread_t:0x411210, state:CW) prio=9
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:424)
              at sun.awt.AWTFinalizer.run(AWTFinalizer.java:46)
          "Screen Updater" (TID:0xebc9ce98, sys_thread_t:0x3b43c0, state:MW) prio=6
              at sun.awt.motif.MComponentPeer.pTriggerRepaint(Native Method)
              at sun.awt.motif.MComponentPeer.updateClient(MComponentPeer.java:202)
              at sun.awt.ScreenUpdater.run(ScreenUpdater.java:103)
          "AWT-Motif" (TID:0xebc9d870, sys_thread_t:0x2a3398, state:MW) prio=5
              at sun.awt.motif.MToolkit.run(Native Method)
              at java.lang.Thread.run(Thread.java:479)
          "SunToolkit.PostEventQueue-0" (TID:0xebc9db60, sys_thread_t:0x287b98,
      state:CW) prio=5
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:424)
              at sun.awt.PostEventQueue.run(SunToolkit.java:363)
          "AWT-EventQueue-0" (TID:0xebc9da90, sys_thread_t:0x287908, state:MW) prio=6
              at sun.awt.font.NativeFontWrapper.getFontMetrics(Native Method)
              at sun.awt.SunToolkit.getFontMetrics(SunToolkit.java:168)
              at sun.awt.motif.MToolkit.getFontMetrics(MToolkit.java:247)
              at
      javax.swing.plaf.basic.BasicLabelUI.getPreferredSize(BasicLabelUI.java:203)
              at javax.swing.JComponent.getPreferredSize(JComponent.java:705)
              at
      javax.swing.plaf.basic.BasicListUI.updateLayoutState(BasicListUI.java:763)
              at
      javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(BasicListUI.java:711)
              at
      javax.swing.plaf.basic.BasicListUI$ListSelectionHandler.valueChanged(BasicListUI
      .java:970)
              at
      javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel
      .java:149)
              at
      javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel
      .java:130)
              at
      javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel
      .java:176)
              at
      javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.
      java:326)
              at
      javax.swing.DefaultListSelectionModel.changeSelection(DefaultListSelectionModel.
      java:335)
              at
      javax.swing.DefaultListSelectionModel.setSelectionInterval(DefaultListSelectionM
      odel.java:359)
              at javax.swing.JList.setSelectedIndex(JList.java:1237)
              at
      javax.swing.plaf.basic.BasicComboPopup.syncListSelectionWithComboBoxSelection(Ba
      sicComboPopup.java:779)
              at
      javax.swing.plaf.basic.BasicComboPopup$ItemHandler.itemStateChanged(BasicComboPo
      pup.java:589)
              at javax.swing.JComboBox.fireItemStateChanged(JComboBox.java:617)
              at javax.swing.JComboBox.selectedItemChanged(JComboBox.java:657)
              at javax.swing.JComboBox.contentsChanged(JComboBox.java:704)
              ... (more frames not shown)
          "Finalizer" (TID:0xebc98320, sys_thread_t:0x692f0, state:MW) prio=8
              at java.awt.AWTEvent.freeNativeData(Native Method)
              at java.awt.AWTEvent.finalize(AWTEvent.java:409)
              at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method)
              at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:90)
              at java.lang.ref.Finalizer.access$1(Finalizer.java:82)
              at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:175)
          "Reference Handler" (TID:0xebc983b0, sys_thread_t:0x64e40, state:CW) prio=10
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:424)
              at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:114)
          "Signal dispatcher" (TID:0xebc983e0, sys_thread_t:0x5e0c0, state:CW) prio=5
          "Thread-5" (TID:0xebc66030, sys_thread_t:0x26aa0, state:CW) prio=5
      Monitor Cache Dump:
          javax.swing.TimerQueue@EBCB9768/EBF42AA0: <unowned>
              Waiting to be notified:
                  "TimerQueue" (0x488f38)
          sun.awt.PostEventQueue@EBC9DB60/EBD059B0: <unowned>
              Waiting to be notified:
                  "SunToolkit.PostEventQueue-0" (0x287b98)
          java.lang.Class@EBCA64F0/EBD17E60: owner "Printing Highlighting" (0x77f520)
      2 entries
              Waiting to enter:
                  "Finalizer" (0x692f0)
                  "AWT-EventQueue-0" (0x287908)
                  "Screen Updater" (0x3b43c0)
                  "AWT-Motif" (0x2a3398)
          java.lang.ref.Reference$Lock@EBC983C0/EBCCD890: <unowned>
              Waiting to be notified:
                  "Reference Handler" (0x64e40)
          sun.awt.AWTFinalizer@EBC9CFD8/EBD61BC0: <unowned>
              Waiting to be notified:
                  "AWT-Finalizer" (0x411210)
      Registered Monitor Dump:
          utf8 hash table: <unowned>
          JNI pinning lock: <unowned>
          JNI global reference lock: <unowned>
          BinClass lock: <unowned>
          Class linking lock: <unowned>
          System class loader lock: <unowned>
          Code rewrite lock: <unowned>
          Heap lock: <unowned>
          Monitor cache lock: owner "Printing Highlighting" (0x77f520) 1 entry
          Dynamic loading lock: <unowned>
          Monitor IO lock: <unowned>
          User signal monitor: <unowned>
              Waiting to be notified:
                  "Signal dispatcher" (0x5e0c0)
          Child death monitor: <unowned>
              Waiting to be notified:
                  "process reaper" (0x7b3458)
          I/O monitor: <unowned>
          Alarm monitor: <unowned>
              Waiting to be notified:
                  <unknown thread> (0x2bd90)
          Thread queue lock: owner "Printing Highlighting" (0x77f520) 1 entry
              Waiting to be notified:
                  "Thread-5" (0x26aa0)
          Monitor registry: owner "Printing Highlighting" (0x77f520) 1 entry

      Abort

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                tnguyensunw Thanh Nguyen (Inactive)
                Reporter:
                rckim Robert Kim (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: