Uploaded image for project: '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

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 2.0
    • 2.2
    • None
    • None
    • Operating System: Mac OS X 10.3
      Platform: Macintosh

    • 33067

    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 .

      Attachments

        Activity

          People

            Unassigned Unassigned
            andrew@terracottatech.com Andrew Geweke
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: