Commons Lang
  1. Commons Lang
  2. LANG-42

[lang] EqualsBuilder.append(Object[], Object[]) crashes with a NullPointerException if an element of the first array is null

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: 2.0
    • Fix Version/s: 2.2
    • Component/s: None
    • Labels:
      None
    • Environment:

      Operating System: Mac OS X 10.3
      Platform: Macintosh

      Description

      If you use EqualsBuilder.append(Object[], Object[]), and the first array contains an element that is null
      (and before any other mismatches between the arrays are present), then EqualsBuilder will throw a
      NullPointerException at line 513.

      Steps to reproduce:

      Object[] x1 = new Object[]

      { new Integer(1), null, new Integer(3) }

      ;
      Object[] x2 = new Object[]

      { new Integer(1), new Integer(2), new Integer(3) }

      ;

      new EqualsBuilder().append(x1, x2);

      The third line of this program will crash.

      Attached is a patch that fixes this bug and adds code to an existing unit-test case that proves it's fixed
      (i.e., the test fails without the source patch, and passes with it, and is a valid test).

      This patch also fixes another bug related to exact types of objects in an array (which I'm about to enter,
      and which I will relate to this bug if I figure out how .

        Activity

        Hide
        Henri Yandell added a comment -
            • COM-2001 has been marked as a duplicate of this bug. ***
        Show
        Henri Yandell added a comment - COM-2001 has been marked as a duplicate of this bug. ***
        Hide
        ggregory@seagullsw.com added a comment -

        This appears to be already fixed in CVS and should be in the nightly build. I've
        added the test case in a new method testNpeForNullElement().

        Show
        ggregory@seagullsw.com added a comment - This appears to be already fixed in CVS and should be in the nightly build. I've added the test case in a new method testNpeForNullElement().
        Hide
        Andrew Geweke added a comment -

        See also COM-1843.

        Show
        Andrew Geweke added a comment - See also COM-1843 .
        Hide
        Andrew Geweke added a comment -

        Created an attachment (id=13983)
        Patch includes a testcase that proves existence of the bug / that it's fixed,
        and fixes the bug in the source.

        Show
        Andrew Geweke added a comment - Created an attachment (id=13983) Patch includes a testcase that proves existence of the bug / that it's fixed, and fixes the bug in the source.

          People

          • Assignee:
            Unassigned
            Reporter:
            Andrew Geweke
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development