Uploaded image for project: 'Aptana Studio'
  1. Aptana Studio
  2. APSTUD-3776

Investigate replacement for HTML Tidy Validator


    • Type: Bug
    • Status: Closed
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: Aptana Studio 3.0.7
    • Component/s: HTML
    • Labels:
    • Environment:

      Aptana Studio 3, build:
      Windows 7

    • Story Points:


      This item manifested after pasting the set of all HTML tags from the website :


      Into the HTML editor and arranging them in a valid order (list is included below to speed replication) :

      <area />
      <base />
      <basefont />
      <br />
      <col />
      <frame />
      <hr />
      <img />
      <input />
      <link />
      <meta />
      <param />

      Steps to Replicate :

      1) Open Aptana Studio
      2) Open saved HTML file
      3) Paste above list of HTML tags into editor and begin to arrange in valid order. I continue to witness performance issues and Studio unresponsiveness.

      Actual Results :

      When I discovered this Sunday evening, several malfunctions occurred sequentially. First was a NPE, then a Heap error, and finally Studio turned unresponsive until shut down from the task manager and opened with a new workspace without the offending file, which does not contain an excessive number of tags – perhaps Studio is representing this as an unbalanced tree. Below is the stack trace for the second error :

      !ENTRY org.eclipse.ui 4 0 2011-10-30 21:59:24.432
      !MESSAGE Unhandled event loop exception
      !STACK 0
      java.lang.OutOfMemoryError: Java heap space
      at org.eclipse.swt.widgets.ScrollBar.setThumb(ScrollBar.java:874)
      at org.eclipse.swt.custom.StyledText.setScrollBars(StyledText.java:9294)
      at org.eclipse.swt.custom.StyledText.resetCache(StyledText.java:7787)
      at org.eclipse.swt.custom.StyledText.redraw(StyledText.java:7370)
      at com.aptana.editor.common.extensions.LineBackgroundPainter.drawHighlightLine(LineBackgroundPainter.java:281)
      at com.aptana.editor.common.extensions.LineBackgroundPainter.paint(LineBackgroundPainter.java:146)
      at org.eclipse.jface.text.PaintManager.paint(PaintManager.java:298)
      at org.eclipse.jface.text.PaintManager.keyPressed(PaintManager.java:305)
      at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:161)
      at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
      at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
      at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1103)
      at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1099)
      at org.eclipse.swt.widgets.Widget.wmKeyDown(Widget.java:1808)
      at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Control.java:4498)
      at org.eclipse.swt.widgets.Control.windowProc(Control.java:4193)
      at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
      at org.eclipse.swt.widgets.Display.windowProc(Display.java:4873)
      at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
      at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2459)
      at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3655)
      at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
      at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
      at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
      at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
      at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
      at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
      at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
      at com.aptana.rcp.IDEApplication.start(IDEApplication.java:125)
      at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

      Expected Results :

      Files this size should not consume excessive resources.

      It appears this is related to HTML Tidy. We need to investigate what functions HTML Tidy currently still performs (that are not filtered out) so that we can scope how hard it will be to replace it.


          Issue Links



              • Assignee:
                cwilliams Christopher Williams
                jwitt Joel Witt
              • Watchers:
                0 Start watching this issue


                • Created:

                  Git Integration