Exception when diffing added line

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Medium
    • 1.0 Beta2
    • Affects Version/s: 1.0 Beta2
    • Component/s: None

      I'm having trouble coming up with a reduced test case for this one.

      Create a page with the following content (not the ----)


      This is the home page for the My Test Space space.

      You can edit the content of this page with the Edit link on the right. I'm just creating lots of different versions here.

      Moo

      HTML Edit!


      Update it to this:


      This is the home page for the My Test Space space.

      You can edit the content of this page with the Edit link on the right. I'm just creating lots of different versions here.

      Plain-text edit!

      Moo

      HTML Edit!


      Diff the two pages, and you get an AIOOBE in the within-line diffing. Possibly, Diff is being passed a pair of empty arrays to compare, and barfing on that.

      java.lang.ArrayIndexOutOfBoundsException: 3
      at org.apache.commons.jrcs.diff.myers.MyersDiff.buildPath(MyersDiff.java:126)
      at org.apache.commons.jrcs.diff.myers.MyersDiff.diff(MyersDiff.java:93)
      at org.apache.commons.jrcs.diff.Diff.diff(Diff.java:197)
      at com.atlassian.confluence.util.DiffUtils.diffLine(DiffUtils.java:229)
      at com.atlassian.confluence.util.DiffUtils.printAddedLines(DiffUtils.java:166)
      at com.atlassian.confluence.util.DiffUtils.generateDiff(DiffUtils.java:78)
      at com.atlassian.confluence.pages.actions.AbstractDiffPagesAction.execute(AbstractDiffPagesAction.java:32)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:172)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor.intercept(DefaultWorkflowInterceptor.java:58)
      at com.atlassian.confluence.core.ConfluenceWorkflowInterceptor.intercept(ConfluenceWorkflowInterceptor.java:32)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.atlassian.confluence.core.ConfluenceValidationInterceptor.intercept(ConfluenceValidationInterceptor.java:18)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:42)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:37)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:169)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:116)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:181)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:161)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
      at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:129)
      at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:36)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:61)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:161)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:181)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:83)
      at com.atlassian.confluence.setup.SpringSessionInViewFilter.doFilterInternal(SpringSessionInViewFilter.java:32)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:39)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:38)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.caucho.server.http.Invocation.service(Invocation.java:315)
      at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
      at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
      at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:164)
      at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
      at java.lang.Thread.run(Thread.java:534)

              Assignee:
              Armond Avanes
              Reporter:
              Charles Miller (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: